public void MergeTest() { // File Test FileItem file = new FileItem(); { FileEvent e = new FileEvent(); e.Type = FileEventType.Created; e.Name = "haha"; e.SHA1 = "11"; e.When = DateTime.FromFileTimeUtc(1); file.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Created; e.Name = "haha"; e.SHA1 = "11"; e.When = DateTime.FromFileTimeUtc(2); file.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Created; e.Name = "haha"; e.SHA1 = null; e.When = DateTime.FromFileTimeUtc(3); file.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Renamed; e.Name = "haha"; e.SHA1 = null; e.When = DateTime.FromFileTimeUtc(4); file.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Changed; e.Name = "haha"; e.SHA1 = "11"; e.When = DateTime.FromFileTimeUtc(5); file.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Deleted; e.Name = "haha"; e.SHA1 = "11"; e.When = DateTime.FromFileTimeUtc(6); file.Merge(e); } FileItem dir = new FileItem(); { FileEvent e = new FileEvent(); e.Type = FileEventType.Created; e.IsDirectory = true; e.Name = "dir"; e.When = DateTime.FromFileTimeUtc(1); dir.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Created; e.IsDirectory = true; e.Name = "dir"; e.When = DateTime.FromFileTimeUtc(2); dir.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Created; e.IsDirectory = true; e.Name = "dir"; e.When = DateTime.FromFileTimeUtc(3); dir.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Changed; e.IsDirectory = true; e.Name = "dir"; e.When = DateTime.FromFileTimeUtc(4); dir.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Renamed; e.IsDirectory = true; e.Name = "dir2"; e.When = DateTime.FromFileTimeUtc(5); dir.Merge(e); } { FileEvent e = new FileEvent(); e.Type = FileEventType.Deleted; e.IsDirectory = true; e.Name = "dir2"; e.When = DateTime.FromFileTimeUtc(6); dir.Merge(e); } }
/// <summary> /// Initializes a new instance of the <see cref="VersionControlTest" /> class. /// </summary> public VersionControlTest() { // Initialize if (!Directory.Exists(".Distribox")) { Directory.CreateDirectory(".Distribox"); } if (!Directory.Exists(".Distribox/data")) { Directory.CreateDirectory(".Distribox/data"); } if (Directory.Exists("Dir")) { Directory.Delete("Dir"); } FileEvent e1 = new FileEvent(); e1.Type = FileEventType.Created; e1.EventId = "1"; e1.FileId = "1"; e1.Name = "haha"; FileEvent e2 = new FileEvent(); e2.Type = FileEventType.Changed; e2.EventId = "2"; e2.FileId = "1"; e2.SHA1 = "11"; e2.Name = "haha"; File.WriteAllText(".Distribox/data/11", "haha"); FileEvent e3 = new FileEvent(); e3.Type = FileEventType.Renamed; e3.EventId = "3"; e3.FileId = "1"; e3.SHA1 = "11"; e3.Name = "XX"; FileEvent e4 = new FileEvent(); e4.Type = FileEventType.Deleted; e4.EventId = "4"; e4.FileId = "1"; e4.Name = "XX"; FileEvent e5 = new FileEvent(); e5.Type = FileEventType.Created; e5.EventId = "5"; e5.FileId = "2"; e5.Name = "TT"; FileEvent e6 = new FileEvent(); e6.Type = FileEventType.Changed; e6.EventId = "6"; e6.FileId = "2"; e6.SHA1 = "11"; e6.Name = "TT"; FileEvent e7 = new FileEvent(); e7.Type = FileEventType.Created; e7.EventId = "7"; e7.FileId = "3"; e7.Name = "Dir"; e7.IsDirectory = true; e7.When = DateTime.FromFileTimeUtc(7); FileItem item1 = new FileItem(); item1.Merge(e1); item1.Merge(e2); item1.Merge(e3); item1.Merge(e4); FileItem item2 = new FileItem(); item2.Merge(e5); item2.Merge(e6); FileItem item3 = new FileItem(); item3.Merge(e7); this.list.Add(item1); this.list.Add(item2); this.list.Add(item3); }