Expect(err).ToNot(HaveOccurred())
				Expect(desiredLRP.GetMonitor().GetEmitProgressAction().GetAction().GetTimeoutAction().GetTimeoutMs()).To(Equal(int64(10000)))
			})

			It("changes action startTimeout to milliseconds", func() {
				Expect(migrationErr).NotTo(HaveOccurred())
				desiredLRP, err := db.DesiredLRPByProcessGuid(logger, processGuid)
				Expect(err).ToNot(HaveOccurred())
				Expect(desiredLRP.GetAction().GetTimeoutAction().GetTimeoutMs()).To(Equal(int64(4000)))
			})

			It("changes setup startTimeout to milliseconds", func() {
				Expect(migrationErr).NotTo(HaveOccurred())
				desiredLRP, err := db.DesiredLRPByProcessGuid(logger, processGuid)
				Expect(err).ToNot(HaveOccurred())
				Expect(desiredLRP.GetSetup().GetTimeoutAction().GetTimeoutMs()).To(Equal(int64(7000)))
			})

			Context("when there are no actions", func() {
				BeforeEach(func() {
					desiredLRP.Action = nil
					desiredLRP.Monitor = nil
					desiredLRP.Setup = nil
				})

				It("does nothing", func() {
					Expect(migrationErr).NotTo(HaveOccurred())
					_, err := db.DesiredLRPByProcessGuid(logger, processGuid)
					Expect(err).ToNot(HaveOccurred())
				})
			})
예제 #2
0
					},
					20*time.Millisecond,
				))
				desiredLRP.Monitor = models.WrapAction(models.Timeout(
					&models.RunAction{
						Path: "/the/path",
						User: "******",
					},
					30*time.Millisecond,
				))
				desiredLRP.StartTimeoutMs = 10000
			})

			It("converts TimeoutMs to Timeout in Nanoseconds", func() {
				desiredLRP.VersionDownTo(format.V1)
				Expect(desiredLRP.GetSetup().GetTimeoutAction().DeprecatedTimeoutNs).To(BeEquivalentTo(10 * time.Millisecond))
				Expect(desiredLRP.GetAction().GetTimeoutAction().DeprecatedTimeoutNs).To(BeEquivalentTo(20 * time.Millisecond))
				Expect(desiredLRP.GetMonitor().GetTimeoutAction().DeprecatedTimeoutNs).To(BeEquivalentTo(30 * time.Millisecond))
			})

			It("converts StartTimeoutMs to StartTimeout in seconds", func() {
				desiredLRP.VersionDownTo(format.V1)
				Expect(desiredLRP.GetDeprecatedStartTimeoutS()).To(BeEquivalentTo(10))
			})
		})

		Context("V0", func() {
			var (
				downloadAction1, downloadAction2 models.DownloadAction
			)