public void OnUseRestTest_ValidateCookies() { var classTest = new ClassTest(); var restTest = new RT("./test.json"); restTest.OnTestFinished += classTest.OnFinished; _server.ResponseCookies.Add("Country", "EUA"); restTest.Start(); Assert.AreEqual(Status.Ok, classTest.Results["cookie test"].Status); Assert.AreEqual(string.Empty, classTest.Results["cookie test"].Error); Assert.AreEqual(Status.Fail, classTest.Results["cookie test error"].Status); var expected = "Cookie => expected { \"country\": \"wrong cookie\", \"cookie1\": \"value1\" } received { \"Country\": \"EUA\", \"cookie1\": \"value1\" }"; var expectedFormatted = new TextFormatter(expected).RemoveAllSpaces().ToString(); var actualFormatted = new TextFormatter(classTest.Results["cookie test error"].Error).RemoveAllSpaces().ToString(); Assert.AreEqual(expectedFormatted, actualFormatted); Assert.AreEqual(Status.Ok, classTest.Results["no cookie validation"].Status); Assert.AreEqual(string.Empty, classTest.Results["no cookie validation"].Error); }
public void OnUseRestTest_ValidateHeader() { var classTest = new ClassTest(); var restTest = new RT("./header_validation.json"); restTest.OnTestFinished += classTest.OnFinished; _server.ResponseHeader.Add("Content-Type", "application/json"); restTest.Start(); //Assert.AreEqual(Status.Ok, classTest.Results["header validation"].Status); //Assert.AreEqual(string.Empty, classTest.Results["header validation"].Error); Assert.AreEqual(Status.Fail, classTest.Results["header wrong validation"].Status); var expected = "Header => expected { \"custom-header\": \"custom-value\", \"Server\": \"Microsoft-HTTPAPI/2.0\", \"Date\": \"${ANY}\", \"Content-Length\": \"0\" } received { \"Server\": \"Microsoft-HTTPAPI/2.0\", \"Date\": \"${ANY}\", \"Content-Length\": \"0\", \"Content-Type\": \"application/json\" }"; var expectedFormated = new TextFormatter(expected).RemoveAllSpaces().ToString(); // Replace date from test var actual = Regex.Replace(classTest.Results["header wrong validation"].Error, "received.*\"Date\":.*GMT", "received { \"Server\": \"Microsoft-HTTPAPI/2.0\", \"Date\": \"${ANY}"); var actualFormated = new TextFormatter(actual).RemoveAllSpaces().ToString(); Assert.AreEqual(expectedFormated, actualFormated); }
void RT_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { RT.Stop(); for (int i = 0; i < 8; i++) { RotateAngles[i] += 40; if (RotateAngles[i] > 360) { RotateAngles[i] -= 360; } DirectionAngles[i] += 40; if (DirectionAngles[i] > 360) { DirectionAngles[i] -= 360; } } RT.Start(); }
public void OnUseRestTest_ValidateStatus() { var classTest = new ClassTest(); var restTest = new RT("./test.json"); restTest.OnTestFinished += classTest.OnFinished; restTest.Start(); Assert.AreEqual(Status.Ok, classTest.Results["validation status 200"].Status); Assert.AreEqual(string.Empty, classTest.Results["validation status 200"].Error); Assert.AreEqual(Status.Fail, classTest.Results["validation status wrong port"].Status); Assert.IsTrue(classTest.Results["validation status wrong port"].Error.Contains("General error")); Assert.AreEqual(Status.Ok, classTest.Results["without status validation. Status 200"].Status); Assert.AreEqual(string.Empty, classTest.Results["without status validation. Status 200"].Error); }
public void OnUseRestTest_ValidateBody() { var classTest = new ClassTest(); var restTest = new RT("./test.json"); restTest.OnTestFinished += classTest.OnFinished; _server.ResponseBody = "{\"responseStr\": \"any\", \"responseInt\": 19 }"; restTest.Start(); Assert.AreEqual(Status.Ok, classTest.Results["validation body"].Status); Assert.AreEqual(string.Empty, classTest.Results["validation body"].Error); Assert.AreEqual(Status.Fail, classTest.Results["wrong validation body"].Status); Assert.AreEqual(RemoveNewLine($"Body => expected {{\"responseStr\": \"wrong response\", \"responseInt\": 19}} received {_server.ResponseBody}").Replace(" ", ""), RemoveNewLine(classTest.Results["wrong validation body"].Error).Replace(" ", "")); Assert.AreEqual(Status.Ok, classTest.Results["no body validation"].Status); Assert.AreEqual(string.Empty, classTest.Results["no body validation"].Error); }
static void Main(string[] args) { ArgsResult argsResult = ParseArgs(args); if (argsResult.IsHelp) { Console.WriteLine("Help:"); Console.WriteLine("Use 2 arguments. First argument is path of config file, second argument is path of result test"); Console.WriteLine("Example:"); Console.WriteLine("\tRestTest.ConsoleApp C:\\\\folder\\config.json .\\result.json"); Console.ReadKey(); return; } var factory = new OutputFactory(); IOutput output = factory.Create(argsResult); try { RT rt = new RT(argsResult.ConfigPath); rt.OnTestFinished += output.OnTestFinished; rt.Start(); output.AllTestsFinished(); } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); } finally { if (!argsResult.ContinueAfterFinished) { Console.ReadKey(); } } }