BeforeEach(func() { fs = fakesys.NewFakeFileSystem() logger := boshlog.NewLogger(boshlog.LevelNone) cache = NewCache("/fake-base-path", fs, logger) sha1Calculator = fakebicrypto.NewFakeSha1Calculator() httpClient = fakebihttpclient.NewFakeHTTPClient() provider = NewProvider(cache, fs, httpClient, sha1Calculator, 3, 0, logger) fakeStage = fakebiui.NewFakeStage() }) Describe("Get", func() { Context("when URL starts with file://", func() { BeforeEach(func() { source = newFakeSource("file://fake-file", "fake-sha1", "fake-description") fs.WriteFileString("expanded-file-path", "") fs.ExpandPathExpanded = "expanded-file-path" }) It("returns expanded path to file", func() { path, err := provider.Get(source, fakeStage) Expect(err).ToNot(HaveOccurred()) Expect(path).To(Equal("expanded-file-path")) }) }) Context("when URL starts with http(s)://", func() { BeforeEach(func() { source = newFakeSource("http://fake-url", "fake-sha1", "fake-description") }) Context("when tarball is present in cache", func() {
BeforeEach(func() { fakeFs.WriteFileString(comboManifestPath, `--- name: fake-deployment-name cloud_provider: template: name: fake-cpi-job-name release: fake-cpi-release-name ssh_tunnel: host: 54.34.56.8 port: 22 user: fake-ssh-user private_key: ~/tmp/fake-ssh-key.pem mbus: http://fake-mbus-user:[email protected]:6868 `) fakeUUIDGenerator.GeneratedUUID = "fake-uuid" fakeFs.ExpandPathExpanded = "/Users/foo/tmp/fake-ssh-key.pem" }) It("generates registry config and populates properties in manifest with expanded path for private_key", func() { installationManifest, err := parser.Parse(comboManifestPath, releaseSetManifest) Expect(err).ToNot(HaveOccurred()) Expect(installationManifest).To(Equal(manifest.Manifest{ Name: "fake-deployment-name", Template: manifest.ReleaseJobRef{ Name: "fake-cpi-job-name", Release: "fake-cpi-release-name", }, Properties: biproperty.Map{ "registry": biproperty.Map{ "host": "127.0.0.1",