diff --git a/Iteration/Iterations.cs b/Iteration/Iterations.cs index 28708cd..fbd089f 100644 --- a/Iteration/Iterations.cs +++ b/Iteration/Iterations.cs @@ -58,8 +58,17 @@ public class Iterations return false; } - public static bool FirstUpper(string s, string sub) + public static string FirstUpper(string s) { - return true; + string phrase = s; + string[] word = s.Split(' '); + string result = String.Empty; + foreach (var element in word) + { + string first = element.Substring(0, 1); + result += first.ToUpper() + element.Substring(1) + " "; + } + + return result.TrimEnd(); } } \ No newline at end of file diff --git a/Tests/Interatif/IterationTests.cs b/Tests/Interatif/IterationTests.cs index 4b108db..7097d10 100644 --- a/Tests/Interatif/IterationTests.cs +++ b/Tests/Interatif/IterationTests.cs @@ -25,4 +25,14 @@ public class IterationTests bool actual = Iteration.Iterations.FindSub(s, sub); Assert.Equal(expected, actual); } + + [Theory] + [InlineData("Je me crois en enfer, donc j'y suis.", "Je Me Crois En Enfer, Donc J'y Suis.")] + [InlineData("!abc !def ghi .klm", "!abc !def Ghi .klm")] + + public void CapitalizeTest(string s, string expected) + { + string actual = Iteration.Iterations.FirstUpper(s); + Assert.Equal(expected, actual); + } } \ No newline at end of file