Example #1
0
				expectFind.Return(compiledPkgRecord, true, nil).Times(1)
			})

			It("skips the compilation", func() {
				_, _, err := compiler.Compile(pkg)
				Expect(err).ToNot(HaveOccurred())

				Expect(len(runner.RunComplexCommands)).To(Equal(0))
			})
		})

		It("installs all the dependencies for the package", func() {
			_, _, err := compiler.Compile(pkg)
			Expect(err).ToNot(HaveOccurred())

			blobstoreID, sha1, jobPath := fakeExtractor.ExtractArgsForCall(0)
			Expect(blobstoreID).To(Equal(dep1.BlobID))
			Expect(sha1).To(Equal(dep1.BlobSHA1))
			Expect(jobPath).To(Equal(filepath.Join(packagesDir, "fake-package-name-dependency-1")))

			blobstoreID, sha1, jobPath = fakeExtractor.ExtractArgsForCall(1)
			Expect(blobstoreID).To(Equal(dep2.BlobID))
			Expect(sha1).To(Equal(dep2.BlobSHA1))
			Expect(jobPath).To(Equal(filepath.Join(packagesDir, "fake-package-name-dependency-2")))
		})

		It("runs the packaging script in package extractedPath dir", func() {
			_, _, err := compiler.Compile(pkg)
			Expect(err).ToNot(HaveOccurred())

			expectedCmd := boshsys.Command{