public virtual void ResolveCountersTest() { CssCounterManager manager = new CssCounterManager(); manager.ResetCounter("counter1", 1); NUnit.Framework.Assert.AreEqual("1", manager.ResolveCounters("counter1", ";", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("0", manager.ResolveCounters("counter2", "::", CounterDigitsGlyphStyle.DEFAULT )); IElementNode node1 = new CssPseudoElementNode(null, "name"); manager.PushEveryCounterToCounters(node1); manager.ResetCounter("counter2", 1); manager.IncrementCounter("counter1", 2); NUnit.Framework.Assert.AreEqual("3", manager.ResolveCounters("counter1", ";", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("1", manager.ResolveCounters("counter2", "::", CounterDigitsGlyphStyle.DEFAULT )); IElementNode node2 = new CssPseudoElementNode(null, "name"); manager.PushEveryCounterToCounters(node2); manager.ResetCounter("counter1", 2); manager.ResetCounter("counter1", 30); manager.ResetCounter("counter2", 10); NUnit.Framework.Assert.AreEqual("3;30", manager.ResolveCounters("counter1", ";", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("1::10", manager.ResolveCounters("counter2", "::", CounterDigitsGlyphStyle .DEFAULT)); }
public virtual void PushPopEveryCounterToCountersTest() { CssCounterManager manager = new CssCounterManager(); manager.ResetCounter("counter1", 1); manager.ResetCounter("counter2", 2); NUnit.Framework.Assert.AreEqual("1", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("2", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); IElementNode node1 = new CssPseudoElementNode(null, "name"); manager.PushEveryCounterToCounters(node1); manager.ResetCounter("counter1", 3); manager.ResetCounter("counter2", 4); NUnit.Framework.Assert.AreEqual("1,3", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("2,4", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); IElementNode node2 = new CssPseudoElementNode(null, "name"); manager.PushEveryCounterToCounters(node2); manager.ResetCounter("counter1", 5); NUnit.Framework.Assert.AreEqual("1,3,5", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle. DEFAULT)); NUnit.Framework.Assert.AreEqual("2,4", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); IElementNode node3 = new CssPseudoElementNode(null, "name"); manager.PushEveryCounterToCounters(node3); NUnit.Framework.Assert.AreEqual("1,3,5", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle. DEFAULT)); NUnit.Framework.Assert.AreEqual("2,4", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); manager.PopEveryCounterFromCounters(node3); NUnit.Framework.Assert.AreEqual("1,3,5", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle. DEFAULT)); NUnit.Framework.Assert.AreEqual("2,4", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); manager.PopEveryCounterFromCounters(node2); NUnit.Framework.Assert.AreEqual("1,3", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("2,4", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); manager.PopEveryCounterFromCounters(node1); NUnit.Framework.Assert.AreEqual("1", manager.ResolveCounters("counter1", ",", CounterDigitsGlyphStyle.DEFAULT )); NUnit.Framework.Assert.AreEqual("2", manager.ResolveCounters("counter2", ",", CounterDigitsGlyphStyle.DEFAULT )); manager.PopEveryCounterFromCounters(node1); }
public virtual void AddTargetCounterIfRequiredTest() { CssCounterManager manager = new CssCounterManager(); NUnit.Framework.Assert.IsNull(manager.ResolveTargetCounter("id1", "counter", CounterDigitsGlyphStyle.DEFAULT )); IElementNode node1 = new _CssPseudoElementNode_161(null, "name"); IElementNode node2 = new _CssPseudoElementNode_170(null, "name"); IElementNode node3 = new CssPseudoElementNode(null, "name"); manager.AddTargetCounterIfRequired(node1); manager.AddTargetCounterIfRequired(node2); manager.AddTargetCounterIfRequired(node3); NUnit.Framework.Assert.AreEqual("0", manager.ResolveTargetCounter("id1", "counter", CounterDigitsGlyphStyle .DEFAULT)); NUnit.Framework.Assert.IsNull(manager.ResolveTargetCounter("id2", "counter", CounterDigitsGlyphStyle.DEFAULT )); manager.ResetCounter("counter"); manager.IncrementCounter("counter"); manager.AddTargetCounterIfRequired(node1); NUnit.Framework.Assert.AreEqual("1", manager.ResolveTargetCounter("id1", "counter", CounterDigitsGlyphStyle .DEFAULT)); }