package usecases; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import com.beijunyi.parallelgit.filesystem.AbstractGitFileSystemTest; import com.beijunyi.parallelgit.filesystem.Gfs; import com.beijunyi.parallelgit.utils.GitFileUtils; import org.eclipse.jgit.revwalk.RevCommit; import org.junit.Before; import org.junit.Test; import static org.junit.Assert.*; public class CommitEmptyDirectoryTest extends AbstractGitFileSystemTest { @Before public void setupFileSystem() throws IOException { initGitFileSystem(); } @Test public void commitEmptyDirectory_theEmptyDirectoryShouldNotExistInTheResultCommit() throws IOException { writeSomethingToGfs(); Path dir = gfs.getPath("/empty_dir"); Files.createDirectory(dir); RevCommit commit = Gfs.commit(gfs).execute().getCommit(); assertFalse(GitFileUtils.exists("/empty_dir", commit, repo)); } @Test public void commitEmptyDirectories_theEmptyDirectoriesShouldNotExistInTheResultCommit() throws IOException { writeSomethingToGfs(); Path dir = gfs.getPath("/dir1/dir2"); Files.createDirectories(dir); RevCommit commit = Gfs.commit(gfs).execute().getCommit(); assertFalse(GitFileUtils.exists("/dir1", commit, repo)); } @Test public void commitEmptyDirectory_theEmptyDirectoryShouldExistInTheFileSystemAfterTheOperation() throws IOException { writeSomethingToGfs(); Path dir = gfs.getPath("/empty_dir"); Files.createDirectory(dir); Gfs.commit(gfs).execute(); assertTrue(Files.exists(dir)); } }