Пример #1
0
        private static void CompareString(string subText, ScriptStringSlice slice)
        {
            Assert.AreEqual(subText, slice.ToString());

            Assert.AreEqual(subText.Length, slice.Length);

            if (slice.Length > 0)
            {
                Assert.NotZero(slice.GetHashCode());
            }

            Assert.True(subText == slice, "String not comparing correctly: Expecting: {subText}, Result: {slice}");

            for (int j = 0; j < slice.Length; j++)
            {
                Assert.AreEqual(subText[j], slice[j]);
            }

            foreach (var compare in StringsToCompare)
            {
                {
                    var result      = subText.CompareTo(compare);
                    var sliceResult = slice.CompareTo(compare);
                    Assert.AreEqual(result, sliceResult);
                }

                Assert.AreEqual(subText == compare, slice == compare);
                Assert.AreEqual(subText == compare, compare == slice);
            }
        }
Пример #2
0
 public static void Write(this IScriptOutput scriptOutput, ScriptStringSlice text)
 {
     if (text.FullText == null)
     {
         throw new ArgumentNullException(nameof(text));
     }
     if (text.Length == 0)
     {
         return;
     }
     scriptOutput.Write(text.FullText, text.Index, text.Length);
 }
Пример #3
0
 /// <summary>
 /// Writes the text to the current <see cref="Output"/>
 /// </summary>
 /// <param name="slice">The text.</param>
 public TemplateContext Write(ScriptStringSlice slice)
 {
     Write(slice.FullText, slice.Index, slice.Length);
     return(this);
 }
Пример #4
0
 public ScriptPrinter Write(ScriptStringSlice slice)
 {
     _previousHasSpace = slice.Length > 0 && char.IsWhiteSpace(slice[slice.Length - 1]);
     _output.Write(slice);
     return(this);
 }