Skip to content

Commit 8aa5680

Browse files
author
Sébastien Geiser
committed
Tests OK
1 parent d13b71e commit 8aa5680

File tree

5 files changed

+9
-14
lines changed

5 files changed

+9
-14
lines changed

CodingSeb.Converters.Tests/CodingSeb.Converters.Tests.csproj

+2-1
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@
77

88
<ItemGroup>
99
<PackageReference Include="NUnit" Version="3.12.0" />
10+
<PackageReference Include="NUnit3TestAdapter" Version="3.15.1" />
1011
<PackageReference Include="Shouldly" Version="3.0.2" />
11-
<PackageReference Include="System.Drawing.Common" Version="4.6.1" />
12+
<PackageReference Include="System.Drawing.Common" Version="4.7.0" />
1213
</ItemGroup>
1314

1415
<ItemGroup>

CodingSeb.Converters.Tests/StringContainsConverterTest.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using NUnit.Framework;
22
using Shouldly;
3+
using System;
34

45
namespace CodingSeb.Converters.Tests
56
{
@@ -17,7 +18,7 @@ public void SimpleStringContainsConvert()
1718
((bool)converter.Convert("This is a Test !!!", null, null, null)).ShouldBeTrue();
1819
((bool)converter.Convert("This is a test !!!", null, null, null)).ShouldBeFalse();
1920

20-
converter.IgnoreCase = true;
21+
converter.StringComparison = StringComparison.OrdinalIgnoreCase;
2122

2223
((bool)converter.Convert("This is a test !!!", null, null, null)).ShouldBeTrue();
2324
}

CodingSeb.Converters/CodingSeb.Converters.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
22

33
<PropertyGroup>
4-
<TargetFrameworks>netcoreapp3.0;net4.7</TargetFrameworks>
4+
<TargetFrameworks>netcoreapp3.0;net47</TargetFrameworks>
55
<UseWPF>true</UseWPF>
66
<Description>Some Converters to use in WPF</Description>
77
<PackageReleaseNotes />

CodingSeb.Converters/Converters/StringContainsConverter.cs

+3-10
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,15 @@ public class StringContainsConverter : BaseConverter, IValueConverter
2222
public string ContainsString { get; set; } = string.Empty;
2323

2424
/// <summary>
25-
/// if <c>true</c>, ignore case of the string to find ContainsString, if <c>false</c> take care of the case. By default : false
25+
/// To specify the culture and case of the equals
2626
/// </summary>
27-
public bool IgnoreCase { get; set; }
27+
public StringComparison StringComparison { get; set; }
2828

2929
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
3030
{
3131
if (DesignerProperties.GetIsInDesignMode(new DependencyObject()) && InDesigner != null) return InDesigner.Value;
3232

33-
if (IgnoreCase)
34-
{
35-
return value.ToString().ToLower().Contains(ContainsString.ToLower().EscapeForXaml());
36-
}
37-
else
38-
{
39-
return value.ToString().Contains(ContainsString.EscapeForXaml());
40-
}
33+
return value.ToString().IndexOf(ContainsString.EscapeForXaml(), StringComparison) > -1;
4134
}
4235

4336
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)

CodingSeb.Converters/Converters/StringEqualsConverter.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public object Convert(object value, Type targetType, object parameter, CultureIn
3636
{
3737
if (DesignerProperties.GetIsInDesignMode(new DependencyObject()) && InDesigner != null) return InDesigner.Value;
3838

39-
return value.ToString().Equals(Value, StringComparison);
39+
return value.ToString().Equals(Value.EscapeForXaml(), StringComparison);
4040
}
4141

4242
/// <summary>

0 commit comments

Comments
 (0)