public void Add_4() { var t1 = new InlineTag(Tag.S, "id", "rid", "name", "ctype", "display", "code"); var t2 = new InlineTag(Tag.S, "ID", "RID", "NAME", "CTYPE", "DISPLAY", "CODE"); var s = new InlineBuilder(); s.Is(); s.Add(""); s.Is(); s.Add("abc"); s.Is("abc"); s.Add(Ins); s.Add("def"); s.Is("abc", Ins_("def")); s.Add(""); s.Is("abc", Ins_("def")); s.Add(t1); s.Is("abc", Ins_("def"), Ins_(t1)); s.Add(""); s.Is("abc", Ins_("def"), Ins_(t1)); s.Add(t2); s.Is("abc", Ins_("def"), Ins_(t1), Ins_(t2)); s.Add(""); s.Is("abc", Ins_("def"), Ins_(t1), Ins_(t2)); s.Add(Del); s.Is("abc", Ins_("def"), Ins_(t1), Ins_(t2)); s.Add("xyz"); s.Is("abc", Ins_("def"), Ins_(t1), Ins_(t2), Del_("xyz")); }
public void Add_1() { var t1 = new InlineTag(Tag.S, "id", "rid", "name", "ctype", "display", "code"); var t2 = new InlineTag(Tag.S, "ID", "RID", "NAME", "CTYPE", "DISPLAY", "CODE"); var s = new InlineBuilder(); s.Is(); s.Add(""); s.Is(); s.Add("abc"); s.Is("abc"); s.Add("def"); s.Is("abcdef"); s.Add(""); s.Is("abcdef"); s.Add(t1); s.Is("abcdef", t1); s.Add(""); s.Is("abcdef", t1); s.Add(t2); s.Is("abcdef", t1, t2); s.Add(""); s.Is("abcdef", t1, t2); s.Add("xyz"); s.Is("abcdef", t1, t2, "xyz"); }
public void Ctors() { var a = new InlineBuilder(); a.Is(); a.IsEmpty.IsTrue(); }
public void GetHashCode_1() { var t1 = new InlineTag(Tag.S, "*", "*", "t", null, null, null); var t2 = new InlineTag(Tag.S, "*", "*", "t", null, null, null); var s1 = new InlineBuilder(); var s2 = new InlineBuilder(); s1.ToInlineString().GetHashCode().Is(s2.ToInlineString().GetHashCode()); s1.Append("abc"); s1.ToInlineString().GetHashCode().IsNot(s2.ToInlineString().GetHashCode()); // very likely but not guaranteed s2.Append("abc"); s1.ToInlineString().GetHashCode().Is(s2.ToInlineString().GetHashCode()); s1.Append("def"); s1.ToInlineString().GetHashCode().IsNot(s2.ToInlineString().GetHashCode()); // very likely but not guaranteed s2.Append("def"); s1.ToInlineString().GetHashCode().Is(s2.ToInlineString().GetHashCode()); s1.Append(t1); s1.ToInlineString().GetHashCode().IsNot(s2.ToInlineString().GetHashCode()); // very likely but not guaranteed s2.Append(t2); s1.ToInlineString().GetHashCode().Is(s2.ToInlineString().GetHashCode()); s1.Append("xxx"); s1.ToInlineString().GetHashCode().IsNot(s2.ToInlineString().GetHashCode()); // very likely but not guaranteed s2.Append("yyy"); s1.ToInlineString().GetHashCode().IsNot(s2.ToInlineString().GetHashCode()); // very likely but not guaranteed }
public void Append_1() { var t1 = new InlineTag(Tag.S, "*", "*", "t1", null, null, null); var t2 = new InlineTag(Tag.S, "*", "*", "t2", null, null, null); var s = new InlineBuilder(); s.Is(); s.Append(""); s.Is(); s.Append("abc"); s.Is("abc"); s.Append("def"); s.Is(new InlineText("abcdef")); s.Append(""); s.Is(new InlineText("abcdef")); s.Append(t1); s.Is(new InlineText("abcdef"), t1); s.Append(t2); s.Is(new InlineText("abcdef"), t1, t2); s.Append(""); s.Is(new InlineText("abcdef"), t1, t2); s.Append("xyz"); s.Is(new InlineText("abcdef"), t1, t2, new InlineText("xyz")); }
public void Equals_1() { var t1 = new InlineTag(Tag.S, "*", "*", "t", null, null, null); var t2 = new InlineTag(Tag.S, "*", "*", "t", null, null, null); var s1 = new InlineBuilder(); var s2 = new InlineBuilder(); s1.ToInlineString().Equals(s2.ToInlineString()).Is(true); s2.ToInlineString().Equals(s1.ToInlineString()).Is(true); s1.Append("abc"); s1.ToInlineString().Equals(s2.ToInlineString()).Is(false); s2.ToInlineString().Equals(s1.ToInlineString()).Is(false); s2.Append("abc"); s1.ToInlineString().Equals(s2.ToInlineString()).Is(true); s2.ToInlineString().Equals(s1.ToInlineString()).Is(true); s1.Append("def"); s1.ToInlineString().Equals(s2.ToInlineString()).Is(false); s2.ToInlineString().Equals(s1.ToInlineString()).Is(false); s2.Append("def"); s1.ToInlineString().Equals(s2.ToInlineString()).Is(true); s2.ToInlineString().Equals(s1.ToInlineString()).Is(true); s1.Append(t1); s1.ToInlineString().Equals(s2.ToInlineString()).Is(false); s2.ToInlineString().Equals(s1.ToInlineString()).Is(false); s2.Append(t2); s1.ToInlineString().Equals(s2.ToInlineString()).Is(true); s2.ToInlineString().Equals(s1.ToInlineString()).Is(true); s1.Append("xxx"); s2.Append("yyy"); s1.ToInlineString().Equals(s2.ToInlineString()).Is(false); s2.ToInlineString().Equals(s1.ToInlineString()).Is(false); }
public void Equals_2() { var s1 = new InlineBuilder(); var s2 = new InlineBuilder(); s1.Append("abc").Append("def"); s2.Append("abcdef"); s1.ToInlineString().Equals(s2.ToInlineString()).Is(true); s2.ToInlineString().Equals(s1.ToInlineString()).Is(true); }
public void Equals_3() { var t = new InlineTag(Tag.S, "*", "*", "t", null, null, null); var s1 = new InlineBuilder(); var s2 = new InlineBuilder(); s1.Append("abc"); s2.Append(t); s1.ToInlineString().Equals(s2.ToInlineString()).Is(false); s2.ToInlineString().Equals(s1.ToInlineString()).Is(false); }
public void Equals_4() { var t1 = new InlineTag(Tag.S, "*", "*", "t", null, "{t}", null); var t2 = new InlineTag(Tag.S, "*", "*", "t", null, "{T}", null); var s1 = new InlineBuilder(); var s2 = new InlineBuilder(); s1.Append(t1); s2.Append(t2); s1.ToInlineString().Equals(s2.ToInlineString()).IsFalse(); s2.ToInlineString().Equals(s1.ToInlineString()).IsFalse(); }
public void Reset_1() { var b = new InlineBuilder(); b.IsEmpty.IsTrue(); b.Add("abc"); b.IsEmpty.IsFalse(); b.Clear(); b.IsEmpty.IsTrue(); b.Add("def"); b.IsEmpty.IsFalse(); b.Clear(true); b.IsEmpty.IsTrue(); }
public void Add_Tag_Exception() { { var b = new InlineBuilder(); AssertEx.Catch <ArgumentNullException>(() => b.Add(Tag.S, null, "rid", "name")); } { var b = new InlineBuilder(); AssertEx.Catch <ArgumentNullException>(() => b.Add(Tag.S, "id", null, "name")); } { var b = new InlineBuilder(); AssertEx.Catch <ArgumentNullException>(() => b.Add(Tag.S, "id", "rid", null)); } }
public void GetHashCode_4() { // InlineTag.GetHashCode doesn't see Display string anymore, // Hence InlineString.GetHashCode, either. var t1 = new InlineTag(Tag.S, "*", "", "t", null, "{t}", null); var t2 = new InlineTag(Tag.S, "*", "", "t", null, "{T}", null); var s1 = new InlineBuilder(); var s2 = new InlineBuilder(); s1.Append(t1); s2.Append(t2); s1.ToInlineString().GetHashCode().Is(s2.ToInlineString().GetHashCode()); }
public void Reset_2() { var b = new InlineBuilder(); b.Property = Ins; b.Property.Is(Ins); b.Clear(); b.Property.Is(None); b.Property = Del; b.Property.Is(Del); b.Clear(true); b.Property.Is(Del); b.Clear(false); b.Property.Is(None); }
public void IsEmpty_2() { var s = new InlineBuilder(); s.IsEmpty.IsTrue(); s.Count().Is(0); s.Append(new InlineTag(Tag.S, "*", "*", "t1", null, null, null)); s.IsEmpty.IsFalse(); s.Count().Is(1); s.Append(""); s.IsEmpty.IsFalse(); s.Count().Is(1); s.Append("a"); s.IsEmpty.IsFalse(); s.Count().Is(2); }
public void Add_2() { var s = new InlineBuilder(); s.Is(); s.Add(Ins); s.Is(); s.Add("abc"); s.Is(Ins_("abc")); s.Add(Emp); s.Is(Ins_("abc")); s.Add(Del); s.Is(Ins_("abc")); s.Add("def"); s.Is(Ins_("abc"), Del_("def")); }
public void Property_2() { var b = new InlineBuilder(); b.Property.Is(None); b.Add("abc"); b.Property.Is(None); b.Property = Ins; b.Property.Is(Ins); b.Add("def"); b.Property.Is(Ins); b.Property = Del; b.Property.Is(Del); b.Add("ghi"); b.Property.Is(Del); b.Is("abc", Ins_("def"), Del_("ghi")); }
public void Add_Tag_1() { var t1 = new InlineTag(Tag.S, "id", "rid", "name", "ctype", "display", "code"); var t2 = new InlineTag(Tag.S, "ID", "RID", "NAME", "CTYPE", "DISPLAY", "CODE"); var s = new InlineBuilder(); s.Is(); s.Add(Tag.S, "id", "rid", "name", "ctype", "display", "code"); s.Add(Ins); s.Add(Tag.S, "id", "rid", "name", "ctype", "display", "code"); s.Add(Del); s.Add(Tag.S, "ID", "RID", "NAME", "CTYPE", "DISPLAY", "CODE"); s.Add(Emp); s.Add(Tag.S, "ID", "RID", "NAME", "CTYPE", "DISPLAY", "CODE"); s.Is(t1, Ins_(t1), Del_(t2), Emp_(t2)); }
public void Property_3() { var b = new InlineBuilder(); b.Property = Ins; b.Add("abc"); b.Add("def"); b.Property = Del; b.Add("ghi"); b.Property = Del; b.Add("jkl"); b.Property = Emp; b.Add("mno"); b.Property = Ins; b.Property = Emp; b.Add("pqr"); b.Is(Ins_("abcdef"), Del_("ghijkl"), Emp_("mnopqr")); }
public void IsEmpty_1() { var s = new InlineBuilder(); s.IsEmpty.IsTrue(); s.Count().Is(0); s.Append(""); s.IsEmpty.IsTrue(); s.Count().Is(0); s.Append("a"); s.IsEmpty.IsFalse(); s.Count().Is(1); s.Append(""); s.IsEmpty.IsFalse(); s.Count().Is(1); s.Append("a"); s.IsEmpty.IsFalse(); s.Count().Is(1); }
public void Append_2() { var t = new InlineTag(Tag.S, "*", "*", "t", null, null, null); var s = new InlineBuilder(); AssertEx.Catch <ArgumentNullException>(() => s.Append((string)null)); AssertEx.Catch <ArgumentNullException>(() => s.Append((InlineTag)null)); AssertEx.Is(s); s.Append(t); AssertEx.Catch <ArgumentNullException>(() => s.Append((string)null)); AssertEx.Catch <ArgumentNullException>(() => s.Append((InlineTag)null)); s.Is(t); s.Append("abc"); AssertEx.Catch <ArgumentNullException>(() => s.Append((string)null)); AssertEx.Catch <ArgumentNullException>(() => s.Append((InlineTag)null)); s.Is(t, new InlineText("abc")); }
/// <summary> /// Parse an XML fragment representing a source/target content into <see cref="InlineString"/>. /// </summary> /// <param name="text"></param> /// <returns></returns> protected static InlineString GetInlineString(string text) { var inline = new InlineBuilder(); foreach (var elem in XElement.Parse(text).Elements("Elements").Elements()) { switch (elem.Name.LocalName) { case "Text": inline.Add((string)elem.Element("Value") ?? ""); break; case "Tag": inline.Add(GetInlineTag(elem)); break; default: // Just in case... inline.Add(new InlineTag(Tag.S, "*", "", elem.Name.LocalName, null, null, elem.ToString())); break; } } return(inline.ToInlineString()); }
public static void Is(this InlineBuilder builder, params Rwp[] items) { builder.AsEnumerable().Is(items.Select(Rwp.Unbox)); }
public void ToString_1() { var F = InlineToString.Flat; var N = InlineToString.Normal; var L = InlineToString.Older; var D = InlineToString.Debug; { var s = new InlineBuilder().ToInlineString(); s.ToString(F).Is(""); s.ToString(N).Is(""); s.ToString(L).Is(""); s.ToString(D).Is(""); } { var s = new InlineBuilder() { "abc" }.ToInlineString(); s.ToString(F).Is("abc"); s.ToString(N).Is("abc"); s.ToString(L).Is("abc"); s.ToString(D).Is("abc"); } { var s = new InlineBuilder() { Ins, "abc", Del, "def" }.ToInlineString(); s.ToString(F).Is("abc"); s.ToString(N).Is("abc"); s.ToString(L).Is("def"); s.ToString(D).Is("{Ins}abc{Del}def"); } { var s = new InlineBuilder() { { Tag.S, "id", "rid", "name" } }.ToInlineString(); s.ToString(F).Is(""); s.ToString(N).Is(""); s.ToString(L).Is(""); s.ToString(D).Is("{name;id}"); } { var s = new InlineBuilder() { { Tag.S, "id", "rid", "name", "ctype", "display", "<code>" } }.ToInlineString(); s.ToString(F).Is(""); s.ToString(N).Is("<code>"); s.ToString(L).Is("<code>"); s.ToString(D).Is("{name;id}"); } { var s = new InlineBuilder() { Ins, { Tag.S, "id", "rid", "name", "ctype", "display", "<code>" }, Del, "abc" }.ToInlineString(); s.ToString(F).Is(""); s.ToString(N).Is("<code>"); s.ToString(L).Is("abc"); s.ToString(D).Is("{Ins}{name;id}{Del}abc"); } { var s = new InlineBuilder() { Del, { Tag.S, "id", "rid", "name", "ctype", "display", "<code>" }, Ins, "abc" }.ToInlineString(); s.ToString(F).Is("abc"); s.ToString(N).Is("abc"); s.ToString(L).Is("<code>"); s.ToString(D).Is("{Del}{name;id}{Ins}abc"); } }