public RenameEdit(IGitRepository repository, GitChangeInfo changeInfo) { _repository = repository; NewSha = changeInfo.newSha; Path = changeInfo.path; PathTo = changeInfo.pathTo; Score = changeInfo.score; }
public void ShouldDetectAddDeleteCorrespondingToCaseRenameWithoutContentChange_AndReturnNoChanges() { string input = ":000000 100644 0000000000000000000000000000000000000000 ed61b923604692e7c8b14763bd94412f471d91cc A\0TestFiles/Test3.txt\0" + ":100644 000000 ed61b923604692e7c8b14763bd94412f471d91cc 0000000000000000000000000000000000000000 D\0TestFiles/test3.txt\0"; using (var reader = new System.IO.StringReader(input)) { var changes = GitChangeInfo.GetChangedFiles(reader).ToArray(); Assert.Empty(changes); } }
public void ShouldDetectCaseOnlyRenameWithContentChange_AndReturnOneModificationChanges() { string input = ":100644 100644 aaaac94fcb11e61378a231b0f3ce36958206d4dd bbbb22c94fcb11e61378a231b0f3ce36958206d4 R100\0TestFiles/Test1.txt\0TestFiles/test1.txt\0"; using (var reader = new System.IO.StringReader(input)) { var changes = GitChangeInfo.GetChangedFiles(reader).ToArray(); Assert.Equal(1, changes.Length); Assert.Equal("M", changes[0].Status); Assert.Equal("TestFiles/Test1.txt", changes[0].path); } }
public void ShouldDetectNormalRename_AndReturnOneRenameChange() { string input = ":100644 100644 ab6422c94fcb11e61378a231b0f3ce36958206d4 bb6422c94fcb11e61378a231b0f3ce36958206d4 R100\0TestFiles/Test0.txt\0TestFiles/Test_moved.txt\0"; using (var reader = new System.IO.StringReader(input)) { var changes = GitChangeInfo.GetChangedFiles(reader).ToArray(); Assert.Equal(1, changes.Length); Assert.Equal("R", changes[0].Status); Assert.Equal("TestFiles/Test_moved.txt", changes[0].pathTo); } }
public void ShouldDetectAddDeleteCorrespondingToCaseRenameWithContentChange_AndReturnOneModificationChange() { string input = ":000000 100644 0000000000000000000000000000000000000000 ed61b923604692e7c8b14763bd94412f471d91cc A\0TestFiles/Test0.txt\0" + ":100644 000000 de4ea28b4e441777cf99329788d545986456183f 0000000000000000000000000000000000000000 D\0TestFiles/test0.txt\0"; using (var reader = new System.IO.StringReader(input)) { var changes = GitChangeInfo.GetChangedFiles(reader).ToArray(); Assert.Equal(1, changes.Length); Assert.Equal("M", changes[0].Status); Assert.Equal("TestFiles/Test0.txt", changes[0].path); } }
public Add(IGitRepository repository, GitChangeInfo changeInfo) { Repository = repository; Path = changeInfo.path; NewSha = changeInfo.newSha; }
public Copy(IGitRepository repository, GitChangeInfo changeInfo) : base(repository, changeInfo) { Path = changeInfo.pathTo; }
public Modify(IGitRepository repository, GitChangeInfo changeInfo) { _repository = repository; NewSha = changeInfo.newSha; Path = changeInfo.path; }
public Delete(GitChangeInfo changeInfo) { Path = changeInfo.path; }
public void GetsLinkMode() { var line = ":000000 160000 abcdef0123abcdef0123abcdef0123abcdef0123 01234567ab01234567ab01234567ab01234567ab M\0blah\0"; var info = GitChangeInfo.Parse(line); Assert.Equal(LibGit2Sharp.Mode.GitLink, info.NewMode); }
public void GetsChangeTypeWhenScoreIsPresent() { var line = ":100644 100644 abcdef0123abcdef0123abcdef0123abcdef0123 01234567ab01234567ab01234567ab01234567ab R001\0blah\0newblah\0"; var info = GitChangeInfo.Parse(line); Assert.Equal("R", info.Status); }
public void GetsChangeType() { var line = ":000000 100644 abcdef0123abcdef0123abcdef0123abcdef0123 01234567ab01234567ab01234567ab01234567ab M\0blah\0"; var info = GitChangeInfo.Parse(line); Assert.Equal("M", info.Status); }
public void GetsPathTo() { var line = ":100644 100644 abcdef0123abcdef0123abcdef0123abcdef0123 01234567ab01234567ab01234567ab01234567ab R001\0Foo\0Bar\0"; var info = GitChangeInfo.Parse(line); Assert.Equal("Bar", info.pathTo); }
private IGitChangedFile GetChangeItem(string diffTreeLine) { // This method is similar to BuildGitChangedFile in GitRepository. var container = new Container(x => { Program.AddGitChangeTypes(x); }); return GitChangeInfo.Parse(diffTreeLine).ToGitChangedFile(container.With((IGitRepository)null)); }
public void GetsMode() { var line = ":000000 100644 abcdef0123abcdef0123abcdef0123abcdef0123 01234567ab01234567ab01234567ab01234567ab M\0blah\0"; var info = GitChangeInfo.Parse(line); Assert.Equal("100644", info.NewMode.ToModeString()); }