private void OnPreCommitBigFile(object sender, ReposHookEventArgs e) { using (SvnLookClient cl = new SvnLookClient()) { using (MemoryStream ms = new MemoryStream()) { cl.Write(e.HookArgs.LookOrigin, "/bigfile", ms); } string b_p; Assert.That(cl.GetProperty(e.HookArgs.LookOrigin, "/bigfile", "a", out b_p)); Assert.That(b_p, Is.EqualTo("b")); } }
public void ChangeInfo_BigWrite() { SvnSandBox sbox = new SvnSandBox(this); Uri uri = sbox.CreateRepository(SandBoxRepository.Empty); string dir = sbox.Wc; Client.CheckOut(uri, dir); string file = Path.Combine(dir, "bigfile"); WriteBigFile(file); Client.Add(file); Client.SetProperty(file, "a", "b"); using (InstallHook(uri, SvnHookType.PreCommit, OnPreCommitBigFile)) { Client.Commit(dir); } using (SvnLookClient cl = new SvnLookClient()) { SvnChangeInfoArgs ia = new SvnChangeInfoArgs(); SvnLookOrigin lo = new SvnLookOrigin(uri.LocalPath); using (MemoryStream ms = new MemoryStream()) { cl.Write(lo, "/bigfile", ms); } string b_p; Assert.That(cl.GetProperty(lo, "/bigfile", "a", out b_p)); Assert.That(b_p, Is.EqualTo("b")); Collection <SvnLookListEventArgs> lst; cl.GetList(lo, "", out lst); Assert.That(lst, Is.Not.Null); Assert.That(lst.Count, Is.EqualTo(1)); SvnLookListEventArgs r = lst[0]; Assert.That(r, Is.Not.Null); Assert.That(r.Name, Is.EqualTo("bigfile")); Assert.That(r.NodeKind, Is.EqualTo(SvnNodeKind.File)); Assert.That(r.Path, Is.EqualTo("bigfile")); } }
public void ChangeInfo_BigWrite() { SvnSandBox sbox = new SvnSandBox(this); Uri uri = sbox.CreateRepository(SandBoxRepository.Empty); string dir = sbox.Wc; Client.CheckOut(uri, dir); string file = Path.Combine(dir, "bigfile"); WriteBigFile(file); Client.Add(file); Client.SetProperty(file, "a", "b"); using (InstallHook(uri, SvnHookType.PreCommit, OnPreCommitBigFile)) { Client.Commit(dir); } using (SvnLookClient cl = new SvnLookClient()) { SvnChangeInfoArgs ia = new SvnChangeInfoArgs(); SvnLookOrigin lo = new SvnLookOrigin(uri.LocalPath); using (MemoryStream ms = new MemoryStream()) { cl.Write(lo, "/bigfile", ms); } string b_p; Assert.That(cl.GetProperty(lo, "/bigfile", "a", out b_p)); Assert.That(b_p, Is.EqualTo("b")); Collection<SvnLookListEventArgs> lst; cl.GetList(lo, "", out lst); Assert.That(lst, Is.Not.Null); Assert.That(lst.Count, Is.EqualTo(1)); SvnLookListEventArgs r = lst[0]; Assert.That(r, Is.Not.Null); Assert.That(r.Name, Is.EqualTo("bigfile")); Assert.That(r.NodeKind, Is.EqualTo(SvnNodeKind.File)); Assert.That(r.Path, Is.EqualTo("bigfile")); } }
void OnPreCommit(object sender, ReposHookEventArgs e) { using (SvnLookClient cl = new SvnLookClient()) { SvnChangeInfoArgs ia = new SvnChangeInfoArgs(); SvnChangeInfoEventArgs i; Assert.That(cl.GetChangeInfo(e.HookArgs.LookOrigin, ia, out i)); Assert.That(i.Revision, Is.LessThan(0L)); Assert.That(i.Author, Is.EqualTo(Environment.UserName)); Assert.That(i.LogMessage, Is.EqualTo("Blaat!\r\nQWQQ\r\n")); using (MemoryStream ms = new MemoryStream()) { SvnLookWriteArgs wa = new SvnLookWriteArgs(); cl.Write(e.HookArgs.LookOrigin, "trunk/Pre.txt", ms, wa); ms.Position = 0; using (StreamReader sr = new StreamReader(ms)) { Assert.That(sr.ReadToEnd(), Is.EqualTo("AllTheData")); } string v; cl.GetProperty(e.HookArgs.LookOrigin, "trunk/Pre.txt", "boe", out v); Assert.That(v, Is.EqualTo("blaat")); SvnPropertyCollection props; cl.GetPropertyList(e.HookArgs.LookOrigin, "trunk/Pre.txt", out props); Assert.That(props, Is.Not.Null); Assert.That(props.Count, Is.EqualTo(1)); } Guid id; Assert.That(cl.TryGetRepositoryId(e.HookArgs.LookOrigin, out id)); Assert.That(id, Is.Not.EqualTo(Guid.Empty)); } }