public void SetUp() { _history = new RevisionHistory(); _changing = new List <ElementChangingEventArgs>(); _changed = new List <ElementChangedEventArgs>(); EnsureErased("vault"); EnsureErased("vault.zip"); EnsureErased("testvault"); EnsureErased("testvault2"); EnsureErased("testvault3"); EnsureErased("blueprint"); EnsureErased("blueprint.zip"); EnsureErased("blueprint.bak"); }
public void TearDown() { EnsureErased("vault"); EnsureErased("vault.zip"); EnsureErased("testvault"); EnsureErased("testvault2"); EnsureErased("testvault3"); EnsureErased("blueprint"); EnsureErased("blueprint.zip"); EnsureErased("blueprint.bak"); if (_trackingEvents) { VerifyEventSymmetry(); } _changed = null; _changing = null; _history = null; }
public static IVault BeforeInv(this IVault vault, RevisionHistory history) { history.BeforeInv(vault); return vault; }
public static IVault Verify(this IVault vault, RevisionHistory history) { history.Verify(vault); return vault; }
public static IValue BeforeMutate(this IValue value, RevisionHistory history) { history.BeforeMutate(value.Vault); return value; }
public static IBranch BeforeMutate(this IBranch branch, RevisionHistory history) { history.BeforeMutate(branch.Vault); return branch; }
public virtual void InternalPropertiesTest() { Guid id, id2, id3, id4, id5, bid, bid2; UInt64 rev, rev2, rev3, rev4, rev5; using (var write = OpenVault("testvault")) { write.BeforeInv(_history).Save(); id = write.BeforeInv(_history).Id; rev = write.BeforeInv(_history).Revision; Assert.AreNotEqual(Guid.Empty, id); Assert.AreEqual(0, rev); var b = write.BeforeMutate(_history).CreateBranch("test"); bid = b.Id; write.BeforeInv(_history).Save(); id2 = write.BeforeInv(_history).Id; rev2 = write.BeforeInv(_history).Revision; Assert.AreEqual(id, id2); Assert.IsTrue(rev2 > rev); } using (var read = OpenVault("testvault")) { id3 = read.BeforeInv(_history).Id; bid2 = read.GetBranch("test").Id; rev3 = read.BeforeInv(_history).Revision; Assert.AreEqual(id, id3); Assert.AreEqual(bid, bid2); Assert.AreEqual(rev2, rev3); _history.Verify(read); var history2 = new RevisionHistory(); read.SaveAs("testvault2"); id4 = read.BeforeInv(history2).Id; rev4 = read.BeforeInv(history2).Revision; Assert.AreNotEqual(id3, id4); Assert.AreEqual(0, rev4); using (var read2 = OpenVault("testvault2")) { id5 = read2.BeforeInv(history2).Id; rev5 = read2.BeforeInv(history2).Revision; Assert.AreEqual(id4, id5); Assert.AreEqual(rev4, rev5); history2.Verify(read2); } history2.Verify(read); } if (_trackingEvents) { Assert.AreEqual(2, _changed.Count); Assert.AreEqual("[ElementAdd: \\ (B: 0+2/0+2V, 1/1B)] null -> \\test (B: 0+0/0+0V, 0/0B)", _changed[0].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\test (B: 0+0/0+0V, 0/0B)] null -> \\ (B: 0+2/0+2V, 1/1B)", _changed[1].ToStringThatsFriendlyToUnitTests()); } }
public virtual void TestAttachFromAlienVault() { using (var write = OpenVault("testvault")) { write.BeforeMutate(_history).CreateValue("val1", "val1"); write.BeforeMutate(_history).CreateValue(@"val1\val2", "val1val2"); write.BeforeMutate(_history).CreateBranch(@"val1\bra1"); write.BeforeMutate(_history).CreateValue(@"val2\val3", "val2val3"); write.BeforeInv(_history).Save(); var history2 = new RevisionHistory(); using (var write2 = OpenVault("testvault2")) { write2.BeforeMutate(history2).ImportFrom(write.BeforeInv(_history)); write2.BeforeInv(history2).Save(); Assert.AreEqual("val1", write2.BeforeInv(history2).GetValue("val1").ContentString); Assert.AreEqual("val1val2", write2.BeforeInv(history2).GetValue(@"val1\val2").ContentString); Assert.IsNotNull(write2.BeforeInv(history2).GetBranch(@"val1\bra1")); Assert.AreEqual("val2val3", write2.BeforeInv(history2).GetValue(@"val2\val3").ContentString); write2.Verify(history2); } write.Verify(_history); } if (_trackingEvents) { Assert.AreEqual(40, _changed.Count); Assert.AreEqual("[ElementAdd: \\ (B: 1+2/3+2V, 2/3B)] null -> \\val1 (V)", _changed[0].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1 (V)] null -> \\ (B: 1+2/3+2V, 2/3B)", _changed[1].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Content: \\val1 (V)] null -> val1", _changed[2].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+2/3+2V, 2/3B)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[3].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\ (B: 1+2/3+2V, 2/3B)", _changed[4].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\val1\\val2 (V)", _changed[5].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1\\val2 (V)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[6].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Content: \\val1\\val2 (V)] null -> val1val2", _changed[7].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\val1\\bra1 (B: 0+0/0+0V, 0/0B)", _changed[8].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1\\bra1 (B: 0+0/0+0V, 0/0B)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[9].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+2/3+2V, 2/3B)] null -> \\val2 (B: 1+0/1+0V, 0/0B)", _changed[10].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val2 (B: 1+0/1+0V, 0/0B)] null -> \\ (B: 1+2/3+2V, 2/3B)", _changed[11].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val2 (B: 1+0/1+0V, 0/0B)] null -> \\val2\\val3 (V)", _changed[12].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val2\\val3 (V)] null -> \\val2 (B: 1+0/1+0V, 0/0B)", _changed[13].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Content: \\val2\\val3 (V)] null -> val2val3", _changed[14].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\val1\\bra1 (B: 0+0/0+0V, 0/0B)", _changed[15].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1\\bra1 (B: 0+0/0+0V, 0/0B)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[16].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\val1\\val2 (V)", _changed[17].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1\\val2 (V)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[18].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val2 (B: 1+0/1+0V, 0/0B)] null -> \\val2\\val3 (V)", _changed[19].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val2\\val3 (V)] null -> \\val2 (B: 1+0/1+0V, 0/0B)", _changed[20].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+0/3+0V, 2/3B)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[21].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\ (B: 1+0/3+0V, 2/3B)", _changed[22].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+0/3+0V, 2/3B)] null -> \\val2 (B: 1+0/1+0V, 0/0B)", _changed[23].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val2 (B: 1+0/1+0V, 0/0B)] null -> \\ (B: 1+0/3+0V, 2/3B)", _changed[24].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+0/3+0V, 2/3B)] null -> \\val1 (V)", _changed[25].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1 (V)] null -> \\ (B: 1+0/3+0V, 2/3B)", _changed[26].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Metadata: \\ (B: 1+2/3+2V, 2/3B)] null -> null", _changed[27].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\val1\\bra1 (B: 0+0/0+0V, 0/0B)", _changed[28].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1\\bra1 (B: 0+0/0+0V, 0/0B)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[29].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\val1\\val2 (V)", _changed[30].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1\\val2 (V)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[31].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+2/3+2V, 2/3B)] null -> \\val1 (B: 1+0/1+0V, 1/1B)", _changed[32].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1 (B: 1+0/1+0V, 1/1B)] null -> \\ (B: 1+2/3+2V, 2/3B)", _changed[33].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\val2 (B: 1+0/1+0V, 0/0B)] null -> \\val2\\val3 (V)", _changed[34].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val2\\val3 (V)] null -> \\val2 (B: 1+0/1+0V, 0/0B)", _changed[35].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+2/3+2V, 2/3B)] null -> \\val2 (B: 1+0/1+0V, 0/0B)", _changed[36].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val2 (B: 1+0/1+0V, 0/0B)] null -> \\ (B: 1+2/3+2V, 2/3B)", _changed[37].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[ElementAdd: \\ (B: 1+2/3+2V, 2/3B)] null -> \\val1 (V)", _changed[38].ToStringThatsFriendlyToUnitTests()); Assert.AreEqual("[Add: \\val1 (V)] null -> \\ (B: 1+2/3+2V, 2/3B)", _changed[39].ToStringThatsFriendlyToUnitTests()); } }
public static IVault BeforeInv(this IVault vault, RevisionHistory history) { history.BeforeInv(vault); return(vault); }
public static IVault Verify(this IVault vault, RevisionHistory history) { history.Verify(vault); return(vault); }
public static IValue BeforeMutate(this IValue value, RevisionHistory history) { history.BeforeMutate(value.Vault); return(value); }
public static IBranch BeforeMutate(this IBranch branch, RevisionHistory history) { history.BeforeMutate(branch.Vault); return(branch); }
public void TearDown() { EnsureErased("vault"); EnsureErased("vault.zip"); EnsureErased("testvault"); EnsureErased("testvault2"); EnsureErased("testvault3"); EnsureErased("blueprint"); EnsureErased("blueprint.zip"); EnsureErased("blueprint.bak"); if (_trackingEvents) VerifyEventSymmetry(); _changed = null; _changing = null; _history = null; }
public void SetUp() { _history = new RevisionHistory(); _changing = new List<ElementChangingEventArgs>(); _changed = new List<ElementChangedEventArgs>(); EnsureErased("vault"); EnsureErased("vault.zip"); EnsureErased("testvault"); EnsureErased("testvault2"); EnsureErased("testvault3"); EnsureErased("blueprint"); EnsureErased("blueprint.zip"); EnsureErased("blueprint.bak"); }