public void StartedWithNoRepository() { var dir = Path.Combine(DirTestRoot, "SomeDir"); Directory.CreateDirectory(dir); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(Path.Combine(DirTestRoot, "SomeDir"), null); }
public void GitFolderLivesInParentFolder() { var dir = Path.Combine(DirTestRoot, "a", "b", "c"); var git = Path.Combine(DirTestRoot, ".git"); Directory.CreateDirectory(dir); Repository.Init(DirTestRoot); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(dir, git); }
public void StartedOnEmptyRepository() { var dir = Path.Combine(DirTestRoot, "SomeDir"); var git = Path.Combine(dir, ".git"); Repository.Init(dir); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(dir, Path.Combine(dir, ".git")); Assert.True(File.Exists(Path.Combine(git, "index"))); Assert.True(Directory.Exists(Path.Combine(git, "logs"))); Assert.True(File.Exists(Path.Combine(git, "logs", "HEAD"))); Assert.True(Directory.Exists(Path.Combine(git, "refs"))); }
private static void Main2(string[] args) { var tracker = new GitTracker(NoRepo); tracker.StartTracking(); var tracker2 = new GitTracker(Repo1); tracker2.StartTracking(); while (!Console.ReadLine().Equals("quit")) { } tracker.Dispose(); tracker2.Dispose(); }
public void StartedOnEstablishedRepository() { var dir = Path.Combine(DirTestRoot, "SomeDir"); Repository.Init(dir); var repo = new Repository(dir); var file = Path.Combine(dir, "a.txt"); File.WriteAllText(file, "..."); Commands.Stage(repo, "a.txt"); var sig = new Signature("Test", "[email protected]", DateTimeOffset.Now); repo.Commit("commit msg", sig, sig, new CommitOptions { AllowEmptyCommit = false }); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(dir, Path.Combine(dir, ".git")); }
public void RemovalAndReaddition_Simple() { var dir = Path.Combine(DirTestRoot, "SomeDir"); var git = Path.Combine(dir, ".git"); Repository.Init(dir); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(dir, git); DeleteDirectory(git); Thread.Sleep(250); AssertInit(dir, null); Repository.Init(dir); Thread.Sleep(1000); AssertInit(dir, git); }
public void StartedOnFutureRepository() { var dir = Path.Combine(DirTestRoot, "SomeDir"); Directory.CreateDirectory(dir); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(dir, null); var hasNotification = false; _sut.GitEnableChanged += () => hasNotification = true; Assert.IsFalse(hasNotification); Repository.Init(dir); // wait for watcher to finish Thread.Sleep(500); Assert.IsTrue(hasNotification); AssertInit(dir, Path.Combine(dir, ".git")); }
public void RemovalOfRepository() { var dir = Path.Combine(DirTestRoot, "SomeDir"); var git = Path.Combine(dir, ".git"); Directory.CreateDirectory(dir); Repository.Init(dir); _sut = new GitTracker(dir); _sut.StartTracking(); AssertInit(dir, git); var hasNotification = false; _sut.GitEnableChanged += () => hasNotification = true; Assert.IsFalse(hasNotification); DeleteDirectory(git); Thread.Sleep(250); Assert.IsTrue(hasNotification); AssertInit(dir, null); }
public void TearDown() { _sut?.Dispose(); _sut = null; }