Path: "/tmp/davtool", Dir: "/", Args: []string{"put", blobURL + "/result.json", "/tmp/result.json"}, User: "******", }, }, } Expect(receptorRequest.Action).To(Equal(expectedActions)) Expect(receptorRequest.TaskGuid).To(Equal("task-name")) Expect(receptorRequest.LogGuid).To(Equal("task-name")) Expect(receptorRequest.MetricsGuid).To(Equal("task-name")) Expect(receptorRequest.RootFS).To(Equal("preloaded:cflinuxfs2")) Expect(receptorRequest.EnvironmentVariables).To(matchers.ContainExactly([]receptor.EnvironmentVariable{ {Name: "CF_STACK", Value: "cflinuxfs2"}, {Name: "MEMORY_LIMIT", Value: "128M"}, {Name: "http_proxy", Value: ""}, {Name: "https_proxy", Value: ""}, {Name: "no_proxy", Value: ""}, })) Expect(receptorRequest.LogSource).To(Equal("BUILD")) Expect(receptorRequest.Domain).To(Equal("lattice")) Expect(receptorRequest.Privileged).To(BeTrue()) Expect(receptorRequest.EgressRules).ToNot(BeNil()) Expect(receptorRequest.EgressRules).To(BeEmpty()) Expect(receptorRequest.MemoryMB).To(Equal(128)) }) It("passes through user environment variables", func() { config.SetBlobStore("blob-host", "7474", "dav-user", "dav-pass") Expect(config.Save()).To(Succeed())
&models.RunAction{ Path: "/tmp/s3uploader", Dir: "/", Args: []string{"access-key", "secret-key", "http://blob-host:7474/", "bucket-name", "droplet-name/result.json", "/tmp/result.json"}, User: "******", }, }, } Expect(receptorRequest.Action).To(Equal(expectedActions)) Expect(receptorRequest.TaskGuid).To(Equal("task-name")) Expect(receptorRequest.LogGuid).To(Equal("task-name")) Expect(receptorRequest.MetricsGuid).To(Equal("task-name")) Expect(receptorRequest.RootFS).To(Equal("preloaded:cflinuxfs2")) Expect(receptorRequest.EnvironmentVariables).To(matchers.ContainExactly([]receptor.EnvironmentVariable{ receptor.EnvironmentVariable{ Name: "CF_STACK", Value: "cflinuxfs2", }, })) Expect(receptorRequest.LogSource).To(Equal("BUILD")) Expect(receptorRequest.Domain).To(Equal("lattice")) Expect(receptorRequest.EgressRules).ToNot(BeNil()) Expect(receptorRequest.EgressRules).To(BeEmpty()) }) It("passes through user environment variables", func() { config.SetBlobTarget("blob-host", 7474, "access-key", "secret-key", "bucket-name") config.Save() env := map[string]string{ "ENV_VAR": "stuff", "OTHER_VAR": "same",
}, &models.RunAction{ Path: "/tmp/davtool", Dir: "/", Args: []string{"delete", blobURL + "/bits.zip"}, User: "******", }, }, } Expect(receptorRequest.Action).To(Equal(expectedActions)) Expect(receptorRequest.TaskGuid).To(Equal("task-name")) Expect(receptorRequest.LogGuid).To(Equal("task-name")) Expect(receptorRequest.MetricsGuid).To(Equal("task-name")) Expect(receptorRequest.RootFS).To(Equal("preloaded:cflinuxfs2")) Expect(receptorRequest.EnvironmentVariables).To(matchers.ContainExactly([]receptor.EnvironmentVariable{ {Name: "CF_STACK", Value: "cflinuxfs2"}, {Name: "MEMORY_LIMIT", Value: "128M"}, })) Expect(receptorRequest.LogSource).To(Equal("BUILD")) Expect(receptorRequest.Domain).To(Equal("lattice")) Expect(receptorRequest.Privileged).To(BeTrue()) Expect(receptorRequest.EgressRules).ToNot(BeNil()) Expect(receptorRequest.EgressRules).To(BeEmpty()) Expect(receptorRequest.MemoryMB).To(Equal(128)) }) It("passes through user environment variables", func() { config.SetBlobStore("blob-host", "7474", "dav-user", "dav-pass") Expect(config.Save()).To(Succeed()) env := map[string]string{ "ENV_VAR": "stuff",
}, &models.RunAction{ Path: "/tmp/s3uploader", Dir: "/", Args: []string{"access-key", "secret-key", "http://blob-host:7474/", "bucket-name", "droplet-name/result.json", "/tmp/result.json"}, }, }, } Expect(receptorRequest.Action).To(Equal(expectedActions)) Expect(receptorRequest.TaskGuid).To(Equal("task-name")) Expect(receptorRequest.LogGuid).To(Equal("task-name")) Expect(receptorRequest.MetricsGuid).To(Equal("task-name")) Expect(receptorRequest.RootFS).To(Equal("preloaded:cflinuxfs2")) Expect(receptorRequest.EnvironmentVariables).To(matchers.ContainExactly([]receptor.EnvironmentVariable{ receptor.EnvironmentVariable{ Name: "CF_STACK", Value: "cflinuxfs2", }, })) Expect(receptorRequest.LogSource).To(Equal("BUILD")) Expect(receptorRequest.Domain).To(Equal("lattice")) Expect(receptorRequest.EgressRules).ToNot(BeNil()) Expect(receptorRequest.EgressRules).To(BeEmpty()) }) It("returns an error when create task fails", func() { fakeTaskRunner.CreateTaskReturns(errors.New("creating task failed")) err := dropletRunner.BuildDroplet("task-name", "droplet-name", "buildpack") Expect(err).To(MatchError("creating task failed")) Expect(fakeTaskRunner.CreateTaskCallCount()).To(Equal(1))
. "github.com/onsi/ginkgo" . "github.com/onsi/gomega" "github.com/cloudfoundry-incubator/lattice/ltc/test_helpers/matchers" ) type woohoo struct { Flag bool } type woomap map[woohoo]string var _ = Describe("ContainExactlyMatcher", func() { It("matches if the array contains exactly the elements in the expected array, but is order independent.", func() { Expect([]string{"hi there", "ho there", "hallo"}).To(matchers.ContainExactly([]string{"hi there", "ho there", "hallo"})) Expect([]string{"hi there", "ho there", "hallo"}).To(matchers.ContainExactly([]string{"ho there", "hallo", "hi there"})) Expect([]woohoo{woohoo{Flag: true}}).To(matchers.ContainExactly([]woohoo{woohoo{Flag: true}})) Expect([]woohoo{woohoo{Flag: true}, woohoo{Flag: false}}).To(matchers.ContainExactly([]woohoo{woohoo{Flag: true}, woohoo{Flag: false}})) Expect([]string{"hi there", "ho there", "hallo"}).ToNot(matchers.ContainExactly([]string{"hi there", "bye bye"})) Expect([]string{"hi there", "ho there", "hallo"}).ToNot(matchers.ContainExactly([]string{"ho there", "hi there"})) Expect([]string{"ho there", "hallo"}).ToNot(matchers.ContainExactly([]string{"ho there", "hi there", "hallo"})) Expect([]string{"hi there", "ho there", "hallo"}).ToNot(matchers.ContainExactly([]string{"buhbye"})) Expect([]string{"hi there", "ho there", "hallo"}).ToNot(matchers.ContainExactly([]string{})) Expect([]woohoo{woohoo{Flag: false}}).ToNot(matchers.ContainExactly([]woohoo{woohoo{Flag: true}})) Expect([]woohoo{woohoo{Flag: false}, woohoo{Flag: false}}).ToNot(matchers.ContainExactly([]woohoo{woohoo{Flag: true}, woohoo{Flag: false}})) }) It("handles map types", func() {