public static IAssertion Create(string expected, string actual, StringCompareShould options, [CallerMemberName] string shouldlyMethod = null)
        {
            List<string> optionsList = new List<string>();
            if ((options & StringCompareShould.IgnoreLineEndings) != 0)
            {
                expected = expected.NormalizeLineEndings();
                actual = actual.NormalizeLineEndings();
                optionsList.Add("Ignoring line endings");
            }

            Case sensitivity;
            Func<string, string, bool> stringComparer;
            if ((options & StringCompareShould.IgnoreCase) == 0)
            {
                sensitivity = Case.Sensitive;
                stringComparer = StringComparer.Ordinal.Equals;
            }
            else
            {
                sensitivity = Case.Insensitive;
                stringComparer = StringComparer.OrdinalIgnoreCase.Equals;
                optionsList.Add("Ignoring case");
            }

            return new StringShouldBeAssertion(
                expected, actual,
                stringComparer,
                new ActualCodeTextGetter(),
                new StringDifferenceHighlighter(sensitivity),
                string.Join(", ", optionsList.ToArray()),
                shouldlyMethod.PascalToSpaced());
        }
 /// <summary>
 /// Perform a string comparison with sensitivity options
 /// </summary>
 public static void ShouldBe(
     this string actual,
     string expected,
     StringCompareShould options)
 {
     ShouldBe(actual, expected, () => null, options);
 }
Exemplo n.º 3
0
 /// <summary>
 /// Perform a string comparison with sensitivity options
 /// </summary>
 public static void ShouldBe(
     [NotNullIfNotNull("expected")] this string?actual,
     [NotNullIfNotNull("actual")] string?expected,
     StringCompareShould options)
 {
     ShouldBe(actual, expected, (string?)null, options);
 }
 /// <summary>
 /// Perform a string comparison with sensitivity options
 /// </summary>
 public static void ShouldBe(
     this string actual,
     string expected,
     StringCompareShould options)
 {
     ShouldBe(actual, expected, () => null, options);
 }
        public static IAssertion Create(string?expected, string?actual, StringCompareShould options, [CallerMemberName] string shouldlyMethod = null !)
        {
            var optionsList = new List <string>();

            if ((options & StringCompareShould.IgnoreLineEndings) != 0)
            {
                expected = expected.NormalizeLineEndings();
                actual   = actual.NormalizeLineEndings();
                optionsList.Add("Ignoring line endings");
            }

            Case sensitivity;
            Func <string?, string?, bool> stringComparer;

            if ((options & StringCompareShould.IgnoreCase) == 0)
            {
                sensitivity    = Case.Sensitive;
                stringComparer = StringComparer.Ordinal.Equals;
            }
            else
            {
                sensitivity    = Case.Insensitive;
                stringComparer = StringComparer.OrdinalIgnoreCase.Equals;
                optionsList.Add("Ignoring case");
            }

            return(new StringShouldBeAssertion(
                       expected, actual,
                       stringComparer,
                       new ActualCodeTextGetter(),
                       new StringDifferenceHighlighter(sensitivity),
                       string.Join(", ", optionsList.ToArray()),
                       shouldlyMethod.PascalToSpaced()));
        }
 public static void ShouldBe(
     this string actual,
     string expected,
     string customMessage,
     StringCompareShould option)
 {
     ShouldBe(actual, expected, () => customMessage, option);
 }
 public static void ShouldBe(
     this string actual,
     string expected,
     string customMessage,
     StringCompareShould option)
 {
     ShouldBe(actual, expected, () => customMessage, option);
 }
 public static void ShouldBe(
     [NotNullIfNotNull("expected")] this string?actual,
     [NotNullIfNotNull("actual")] string?expected,
     string customMessage,
     StringCompareShould option)
 {
     ShouldBe(actual, expected, () => customMessage, option);
 }
        public static void ShouldBe(
            this string actual,
            string expected,
            Func <string> customMessage,
            StringCompareShould options)
        {
            var assertion = StringShouldBeAssertionFactory.Create(expected, actual, options);

            ExecuteAssertion(assertion, customMessage);
        }
Exemplo n.º 10
0
        public static void ShouldBe(
            [NotNullIfNotNull("expected")] this string?actual,
            [NotNullIfNotNull("actual")] string?expected,
            string?customMessage,
            StringCompareShould options)
        {
            var assertion = StringShouldBeAssertionFactory.Create(expected, actual, options);

            ExecuteAssertion(assertion, customMessage);
        }
 public static IAssertion Create(string expected, string actual, StringCompareShould options)
 {
     switch (options)
     {
         case 0:
             return new StringShouldBeAssertion(
                 expected, actual,
                 StringComparer.InvariantCulture.Equals,
                 new ActualCodeTextGetter(),
                 new StringDifferenceHighlighter(
                     "Case and Line Ending Sensitive Comparison",
                     Case.Sensitive));
         case StringCompareShould.IgnoreCase:
             return new StringShouldBeAssertion(
                 expected, actual,
                 StringComparer.InvariantCultureIgnoreCase.Equals,
                 new ActualCodeTextGetter(),
                 new StringDifferenceHighlighter(
                     "Case Insensitive and Line Ending Sensitive Comparison",
                     Case.Insensitive));
         case StringCompareShould.IgnoreLineEndings:
             return new StringShouldBeAssertion(
                 expected, actual,
                 (a, e) => StringComparer.InvariantCulture.Equals(
                     a.NormalizeLineEndings(), e.NormalizeLineEndings()),
                 new ActualCodeTextGetter(),
                 new StringDifferenceHighlighter(
                     "Case Sensitive and Line Ending Insensitive Comparison",
                     Case.Sensitive, s => s.NormalizeLineEndings()));
         case StringCompareShould.IgnoreCase | StringCompareShould.IgnoreLineEndings:
             return new StringShouldBeAssertion(
                 expected, actual,
                 (a, e) => StringComparer.InvariantCultureIgnoreCase.Equals(
                     a.NormalizeLineEndings(), e.NormalizeLineEndings()),
                 new ActualCodeTextGetter(),
                 new StringDifferenceHighlighter(
                     "Case and Line Ending Insensitive Comparison",
                     Case.Insensitive, s => s.NormalizeLineEndings()));
         default:
             throw new InvalidOperationException();
     }
 }
 public ShouldMatchConfigurationBuilder WithStringCompareOptions(StringCompareShould stringCompareOptions)
 {
     return(Configure(c => c.StringCompareOptions = stringCompareOptions));
 }
 public static void ShouldBe(
     this string actual,
     string expected,
     Func<string> customMessage,
     StringCompareShould options)
 {
     var assertion = StringShouldBeAssertionFactory.Create(expected, actual, options);
     ExecuteAssertion(assertion, customMessage);
 }
Exemplo n.º 14
0
        private void PropertyShouldBe(string name, string value, StringCompareShould stringCompareShould = StringCompareShould.IgnoreCase)
        {
            var property = _project.Properties.FirstOrDefault(i => i.Name.Equals(name, StringComparison.OrdinalIgnoreCase));

            property.ShouldNotBe(null);

            property.Value.ShouldBe(value, stringCompareShould);
        }
 public ShouldMatchConfigurationBuilder WithStringCompareOptions(StringCompareShould stringCompareOptions)
 {
     return Configure(c => c.StringCompareOptions = stringCompareOptions);
 }
Exemplo n.º 16
0
 public static void ShouldBe(this string?actual, string?expected, Func <string?> customMessage, StringCompareShould options)
 {
     throw new NotImplementedException();
 }