srcDir := copierFixtureSrcDir() filters := []string{ "some_directory", } dstDir, err := cpCopier.FilteredCopyToTemp(srcDir, filters) Expect(err).ToNot(HaveOccurred()) defer os.RemoveAll(dstDir) copiedFiles := filesInDir(dstDir) Expect(copiedFiles).To(Equal([]string{ dstDir + "/some_directory/sub_dir/other_sub_dir/.keep", })) }) }) Describe("CleanUp", func() { It("cleans up", func() { tempDir := filepath.Join(os.TempDir(), "test-copier-cleanup") fs.MkdirAll(tempDir, os.ModePerm) cpCopier.CleanUp(tempDir) _, err := os.Stat(tempDir) Expect(err).To(HaveOccurred()) }) }) })
fs boshsys.FileSystem compressor Compressor ) BeforeEach(func() { logger := boshlog.NewLogger(boshlog.LevelNone) cmdRunner = boshsys.NewExecCmdRunner(logger) fs = boshsys.NewOsFileSystem(logger) tmpDir, err := fs.TempDir("tarballCompressor-test") Expect(err).NotTo(HaveOccurred()) dstDir = filepath.Join(tmpDir, "TestCompressor") compressor = NewTarballCompressor(cmdRunner, fs) }) BeforeEach(func() { fs.MkdirAll(dstDir, os.ModePerm) }) AfterEach(func() { fs.RemoveAll(dstDir) }) Describe("CompressFilesInDir", func() { It("compresses the files in the given directory", func() { srcDir := fixtureSrcDir() tgzName, err := compressor.CompressFilesInDir(srcDir) Expect(err).ToNot(HaveOccurred()) defer os.Remove(tgzName) tarballContents, _, _, err := cmdRunner.RunCommand("tar", "-tf", tgzName) Expect(err).ToNot(HaveOccurred())
func ensureContainingDir(fs system.FileSystem, fullLogFilename string) error { dir, _ := filepath.Split(fullLogFilename) return fs.MkdirAll(dir, os.FileMode(0750)) }