public static class StringExtensions
public static string ReverseWordOrder(this string input)
private static readonly (string Input, string Expected)[] Cases =
("Simple test", "test Simple"),
("Lorem ipsum dolor sit amet", "amet sit dolor ipsum Lorem")
RunTests(StringExtensions.ReverseWordOrder);
static void RunTests(Func<string, string> method)
foreach (var test in Cases)
var actual = method(test.Input);
var result = actual.Equals(test.Expected);
Console.WriteLine($"\"{test.Input}\": OK");
Console.WriteLine($"\"{test.Input}\": Fail (expected: \"{test.Expected}\", actual: \"{actual}\")");
Console.WriteLine($"\"{test.Input}\": Fail with exception:\r\n{ex}");