Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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();
 }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
        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();
                }
            }
        }