public void CleanShouldDeleteDirectory() { var git = new Mock<IGitCommand>(); var dirs = new Mock<IDirectoryUtils>(); var parser = new Mock<IGitRepoParser>(); var gitRepo = new GitCheckout(parser.Object, dirs.Object, git.Object) {Repository = "repo", Directory = "path"}; gitRepo.Clean(); dirs.Verify(d => d.DeleteDirectory("path"), Times.Once()); }