public void Remote_RemoteList() { DateTime start = DateTime.Now; using (SvnRemoteSession rc = new SvnRemoteSession()) { rc.Open(new Uri("http://svn.apache.org/repos/asf/subversion/")); int n = 0; bool foundTrunk = false; List <Uri> uris = new List <Uri>(); SvnNodeKind dir; rc.GetNodeKind("", out dir); Assert.That(dir, Is.EqualTo(SvnNodeKind.Directory)); rc.List("", delegate(object sender, SvnRemoteListEventArgs e) { n++; if (e.Name == "trunk") { foundTrunk = true; Assert.That(e.Uri, Is.EqualTo(new Uri("http://svn.apache.org/repos/asf/subversion/trunk/"))); } uris.Add(e.Uri); }); Assert.That(foundTrunk); Assert.That(n, Is.GreaterThan(4)); Uri reposRoot; rc.GetRepositoryRoot(out reposRoot); rc.Reparent(reposRoot); int n2 = 0; rc.List("subversion/", delegate(object sender, SvnRemoteListEventArgs e) { n2++; Assert.That(uris.Contains(e.Uri), "Same Uri"); }); Assert.That(n2, Is.EqualTo(n)); } DateTime between = DateTime.Now; Collection <SvnListEventArgs> items; Client.GetList(new Uri("http://svn.apache.org/repos/asf/subversion/"), out items); DateTime after = DateTime.Now; Console.WriteLine(between - start); Console.WriteLine(after - between); }
public void Remote_OpenRepos() { SvnSandBox sbox = new SvnSandBox(this); Uri CollabReposUri = sbox.CreateRepository(SandBoxRepository.MergeScenario); using (SvnRemoteSession r = new SvnRemoteSession(CollabReposUri)) { r.Reparent(CollabReposUri); long rev; Uri uri; Guid id; SvnRemoteStatEventArgs stat; long foundRev; r.GetLatestRevision(out rev); r.GetRepositoryRoot(out uri); r.GetRepositoryId(out id); r.GetStat(null, out stat); r.ResolveRevision(DateTime.Now, out foundRev); Assert.That(uri, Is.EqualTo(CollabReposUri)); Assert.That(rev, Is.EqualTo(17L)); Assert.That(id, Is.EqualTo(new Guid("d4e3f7eb-7f47-4c2b-9c6e-ba21fc616240"))); Assert.That(stat, Is.Not.Null); Assert.That(stat.Entry, Is.Not.Null); Assert.That(stat.Entry.Author, Is.EqualTo("merger")); Assert.That(stat.Entry.NodeKind, Is.EqualTo(SvnNodeKind.Directory)); int n = 0; r.List("", delegate(object sender, SvnRemoteListEventArgs e) { Assert.That(e.Name, Is.Not.Null); n++; }); Assert.That(n, Is.EqualTo(3)); Assert.That(r.SessionUri, Is.Not.Null); Assert.That(r.IsDisposed, Is.False); } }