{ Name: "custom-resource", Type: "custom-type", Source: atc.Source{"some-custom": "source"}, }, })) Expect(delegate).To(Equal(putDelegate)) // TODO: Can we test the map values? Expect(sources).To(HaveKey("some-source")) Expect(sources).To(HaveKey("some-other-source")) Expect(sources).To(HaveKey("some-mounted-source")) }) It("puts the resource with the correct source and params, and the full repository as the artifact source", func() { Expect(fakeResource.PutCallCount()).To(Equal(1)) _, putSource, putParams, putArtifactSource := fakeResource.PutArgsForCall(0) Expect(putSource).To(Equal(resourceConfig.Source)) Expect(putParams).To(Equal(params)) dest := new(fakes.FakeArtifactDestination) err := putArtifactSource.StreamTo(dest) Expect(err).NotTo(HaveOccurred()) Expect(fakeSource.StreamToCallCount()).To(Equal(1)) sourceDest := fakeSource.StreamToArgsForCall(0) someStream := new(bytes.Buffer)
fakeResource.PutReturns(fakeVersionedSource) }) It("initializes the resource with the correct type and session id", func() { Ω(fakeTracker.InitCallCount()).Should(Equal(1)) sid, typ, tags := fakeTracker.InitArgsForCall(0) Ω(sid).Should(Equal(resource.Session{ ID: identifier, })) Ω(typ).Should(Equal(resource.ResourceType("some-resource-type"))) Ω(tags).Should(ConsistOf("some", "tags")) }) It("puts the resource with the correct source and params, and the full repository as the artifact source", func() { Ω(fakeResource.PutCallCount()).Should(Equal(1)) _, putSource, putParams, putArtifactSource := fakeResource.PutArgsForCall(0) Ω(putSource).Should(Equal(resourceConfig.Source)) Ω(putParams).Should(Equal(params)) dest := new(fakes.FakeArtifactDestination) err := putArtifactSource.StreamTo(dest) Ω(err).ShouldNot(HaveOccurred()) Ω(fakeSource.StreamToCallCount()).Should(Equal(1)) sourceDest := fakeSource.StreamToArgsForCall(0) someStream := new(bytes.Buffer)