Expect(pagination.Next).To(Equal(&db.Page{Since: expectedVersions[8].ID, Limit: 2})) }) }) Context("when the version has metadata", func() { BeforeEach(func() { metadata := []db.MetadataField{{Name: "name1", Value: "value1"}} expectedVersions[9].Metadata = metadata build, err := pipelineDB.CreateJobBuild("some-job") Expect(err).ToNot(HaveOccurred()) pipelineDB.SaveBuildInput(build.ID, db.BuildInput{ Name: "some-input", VersionedResource: expectedVersions[9].VersionedResource, FirstOccurrence: true, }) }) It("returns the metadata in the version history", func() { historyPage, _, found, err := pipelineDB.GetResourceVersions("some-resource", db.Page{Limit: 1}) Expect(err).ToNot(HaveOccurred()) Expect(found).To(BeTrue()) Expect(historyPage).To(Equal([]db.SavedVersionedResource{expectedVersions[9]})) }) }) Context("when a version is disabled", func() { BeforeEach(func() { pipelineDB.DisableVersionedResource(10)
Expect(pagination.Next).To(Equal(&db.Page{Since: expectedVersions[8].ID, Limit: 2})) }) }) Context("when the version has metadata", func() { BeforeEach(func() { metadata := []db.MetadataField{{Name: "name1", Value: "value1"}} expectedVersions[9].Metadata = metadata build, err := pipelineDB.CreateJobBuild("some-job") Expect(err).ToNot(HaveOccurred()) pipelineDB.SaveBuildInput(build.ID, db.BuildInput{ Name: "some-input", VersionedResource: expectedVersions[9].VersionedResource, FirstOccurrence: true, }) }) It("returns the metadata in the version history", func() { historyPage, _, err := pipelineDB.GetResourceVersions("some-resource", db.Page{Limit: 1}) Expect(err).ToNot(HaveOccurred()) Expect(historyPage).To(Equal([]db.SavedVersionedResource{expectedVersions[9]})) }) }) Context("when a version is disabled", func() { BeforeEach(func() { pipelineDB.DisableVersionedResource(10)
It("can get a build's inputs", func() { build, err := pipelineDB.CreateJobBuild("some-job") Expect(err).ToNot(HaveOccurred()) expectedBuildInput, err := pipelineDB.SaveBuildInput(build.ID, db.BuildInput{ Name: "some-input", VersionedResource: db.VersionedResource{ Resource: "some-resource", Type: "some-type", Version: db.Version{ "some": "version", }, Metadata: []db.MetadataField{ { Name: "meta1", Value: "data1", }, { Name: "meta2", Value: "data2", }, }, PipelineName: "some-pipeline", }, }) Expect(err).ToNot(HaveOccurred()) actualBuildInput, err := database.GetBuildVersionedResources(build.ID) expectedBuildInput.CheckOrder = 0 Expect(err).ToNot(HaveOccurred())