FirstCharToLower

This commit is contained in:
Mark McDowall 2019-05-05 18:57:33 -07:00
parent 0416060643
commit 2ae4337d0d
4 changed files with 44 additions and 1 deletions

View File

@ -0,0 +1,18 @@
using FluentAssertions;
using NUnit.Framework;
using NzbDrone.Common.Extensions;
namespace NzbDrone.Common.Test.ExtensionTests.StringExtensionTests
{
[TestFixture]
public class FirstCharcacterToLowerFixture
{
[TestCase("Hello", "hello")]
[TestCase("CamelCase", "camelCase")]
[TestCase("A Full Sentence", "a Full Sentence")]
public void should_lower_case_first_character(string input, string expected)
{
input.FirstCharToLower().Should().Be(expected);
}
}
}

View File

@ -0,0 +1,18 @@
using FluentAssertions;
using NUnit.Framework;
using NzbDrone.Common.Extensions;
namespace NzbDrone.Common.Test.ExtensionTests.StringExtensionTests
{
[TestFixture]
public class FirstCharcacterToUpperFixture
{
[TestCase("hello", "Hello")]
[TestCase("camelCase", "CamelCase")]
[TestCase("a full sentence", "A full sentence")]
public void should_capitalize_first_character(string input, string expected)
{
input.FirstCharToUpper().Should().Be(expected);
}
}
}

View File

@ -85,6 +85,8 @@
<Compile Include="ExtensionTests\IEnumerableExtensionTests\IntersectByFixture.cs" />
<Compile Include="ExtensionTests\Int64ExtensionFixture.cs" />
<Compile Include="ExtensionTests\IPAddressExtensionsFixture.cs" />
<Compile Include="ExtensionTests\StringExtensionTests\FirstCharcacterToLowerFixture.cs" />
<Compile Include="ExtensionTests\StringExtensionTests\FirstCharcacterToUpperFixture.cs" />
<Compile Include="ExtensionTests\UrlExtensionsFixture.cs" />
<Compile Include="HashUtilFixture.cs" />
<Compile Include="Http\HttpClientFixture.cs" />

View File

@ -22,9 +22,14 @@ namespace NzbDrone.Common.Extensions
return "[NULL]";
}
public static string FirstCharToLower(this string input)
{
return input.First().ToString().ToLower() + input.Substring(1);
}
public static string FirstCharToUpper(this string input)
{
return input.First().ToString().ToUpper() + string.Join("", input.Skip(1));
return input.First().ToString().ToUpper() + input.Substring(1);
}
public static string Inject(this string format, params object[] formattingArgs)