コード例 #1
0
        public void GenerateGenerateAccessHashBlocked() // Превышено количество запросов на генерацию ссылки // На тесте установлено 5 попыток
        {
            //arrange
            String email     = InitialData.emailBlocked;
            string accessUrl = InitialData.accessUrlCorrect;

            //expected
            Int32  expected_resultCode = 64;
            string expected_resultType = "RC_OFTENTIMES_SENDING";
            string expected_resultStr  = "Перевищено кількість спроб відправки";

            //Act
            dynamic result = null;

            for (int i = 0; i < 6; i++)
            {
                Thread.Sleep(180000);
                result = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));
            }

            //Assert
            Assert.AreEqual(expected_resultCode, (Int32)result.resultCode);
            Assert.AreEqual(expected_resultType, (string)result.resultType);
            Assert.AreEqual(expected_resultStr, (string)result.resultStr);
        }
コード例 #2
0
        public void GenerateAccessHashUrlFora() //Передаем урл Форы
        {
            //arrange
            string email     = InitialData.emailNotVerified;
            string accessUrl = InitialData.accessUrlFora;

            //expected
            Int32  expected_resultCode = 87;
            string expected_resultType = "RC_URL_WRONG";
            string expected_resultStr  = "Помилка в url";

            //Act
            dynamic result = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));

            //Assert
            Assert.AreEqual(expected_resultCode, (Int32)result.resultCode);
            Assert.AreEqual(expected_resultType, (string)result.resultType);
            Assert.AreEqual(expected_resultStr, (string)result.resultStr);
        }
コード例 #3
0
        public void GenerateAccessHashEmailBanned() //Передаем email заблокированного на территории Украины почтового сервера
        {
            //arrange
            string email     = InitialData.emailBanned;
            string accessUrl = InitialData.accessUrlCorrect;

            //expected
            Int32  expected_resultCode = 81;
            string expected_resultType = "RC_EMAIL_ERROR";
            string expected_resultStr  = "Некоректний email";

            //Act
            dynamic result = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));

            //Assert
            Assert.AreEqual(expected_resultCode, (Int32)result.resultCode);
            Assert.AreEqual(expected_resultType, (string)result.resultType);
            Assert.AreEqual(expected_resultStr, (string)result.resultStr);
        }
コード例 #4
0
        public void GenerateAccessHashCorrect_OK() // Передаем корректный email и урл для генерации ссылки
        {
            //arrange
            String email     = InitialData.emailNotVerified;
            string accessUrl = InitialData.accessUrlCorrect;


            //expected
            Int32  expected_resultCode = 0;
            string expected_resultType = "RC_OK";
            string expected_resultStr  = "Лист відправлено на t.s******[email protected]";

            //Act
            dynamic result = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));

            //Assert
            Assert.AreEqual(expected_resultCode, (Int32)result.resultCode);
            Assert.AreEqual(expected_resultType, (string)result.resultType);
            Assert.AreEqual(expected_resultStr, (string)result.resultStr);
        }
コード例 #5
0
        public void VerifiedEmailAccessHashCorrect() // Передаем правильную ссылку
        {
            //arrange

            String email     = InitialData.emailCorrect;
            string accessUrl = InitialData.accessUrlCorrect;

            //Сначала генерируем ссылку для подтверждения
            //expected
            Int32  expected_resultCodeGenerate = 0;
            string expected_resultTypeGenerate = "RC_OK";
            string expected_resultStrGenerate  = "Лист відправлено на koy***[email protected]";

            //Act
            dynamic resultGenerate = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));

            //Assert
            Assert.AreEqual(expected_resultCodeGenerate, (Int32)resultGenerate.resultCode);
            Assert.AreEqual(expected_resultTypeGenerate, (string)resultGenerate.resultType);
            Assert.AreEqual(expected_resultStrGenerate, (string)resultGenerate.resultStr);

            //Затем проверяем переход по ссылке, берем из базы хэш по номеру, по которому прошла генерация ссылки
            //expected

            String hashStr = DataBase.GetHashStr(InitialData.emailCorrect);

            Console.WriteLine("HASH:" + hashStr);

            Int32  expected_resultCodeVerify = 0;
            string expected_resultTypeVerify = "RC_OK";
            string expected_resultStrVerify  = "OK";

            //Act
            dynamic resultVerify = JsonConvert.DeserializeObject(SwaggerMethods.VerifiedEmailAccessHash(hashStr));

            //Assert
            Assert.AreEqual(expected_resultCodeVerify, (Int32)resultVerify.resultCode);
            Assert.AreEqual(expected_resultTypeVerify, (string)resultVerify.resultType);
            Assert.AreEqual(expected_resultStrVerify, (string)resultVerify.resultStr);
        }
コード例 #6
0
        public void GenerateAccessHashCorrect_Early() //Передаем корректный email и урл для генерации ссылки, когда ещё не прошло минуты
                                                      //и генерация новой ссылки запрещена
        {
            //arrange
            String email     = InitialData.emailNotVerified;
            string accessUrl = InitialData.accessUrlCorrect;


            //expected
            Int32  expected_resultCode = 77;
            string expected_resultType = "RC_AC_OFTENTIMES_SENDING";
            string expected_resultStr  = "Наступна відправка тимчасово заборонена";

            //Act
            dynamic result = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));


            //Assert
            Assert.AreEqual(expected_resultCode, (Int32)result.resultCode);
            Assert.AreEqual(expected_resultType, (string)result.resultType);
            Assert.AreEqual(expected_resultStr, (string)result.resultStr);
        }
コード例 #7
0
        public void VerifiedEmailAccessHashExpired() // Ссылка просрочилась, на тесте срок жизни ссылки 3 минуты
        {
            //arrange
            String hashStr   = DataBase.GetHashStr(InitialData.emailCorrect);
            String email     = InitialData.emailCorrect;
            string accessUrl = InitialData.accessUrlCorrect;

            //Сначала генерируем ссылку для подтверждения
            //expected
            Int32  expected_resultCodeGenerate = 0;
            string expected_resultTypeGenerate = "RC_OK";
            string expected_resultStrGenerate  = "Лист відправлено на koy***[email protected]";

            //Act
            dynamic resultGenerate = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));

            //Assert
            Assert.AreEqual(expected_resultCodeGenerate, (Int32)resultGenerate.resultCode);
            Assert.AreEqual(expected_resultTypeGenerate, (string)resultGenerate.resultType);
            Assert.AreEqual(expected_resultStrGenerate, (string)resultGenerate.resultStr);

            ////Задаем время, чтоб ссылка просрочилась и вытаскиваем хэш из базы по имейлу, по которому сгенерировалась ссылка
            Thread.Sleep(180000);

            //expected
            Int32  expected_resultCodeVerify = 82;
            string expected_resultTypeVerify = "RC_HASH_EXPIRED";
            string expected_resultStrVerify  = "Термін дії посилання закінчився. Виконайте запит на отримання нового посилання.";

            //Act
            dynamic resultVerify = JsonConvert.DeserializeObject(SwaggerMethods.VerifiedEmailAccessHash(hashStr));

            //Assert
            Assert.AreEqual(expected_resultCodeVerify, (Int32)resultVerify.resultCode);
            Assert.AreEqual(expected_resultTypeVerify, (string)resultVerify.resultType);
            Assert.AreEqual(expected_resultStrVerify, (string)resultVerify.resultStr);
        }
コード例 #8
0
        public void GenerateAccessHashIncorrect() //Передаем корявые значения в полях
        {
            //arrange
            string email     = InitialData.emailIncorrect;
            string accessUrl = InitialData.accessUrlIncorrect;
            string error     = "";


            //expected
            string expected_error = InitialData.expectedError400;

            //Act
            try
            {
                dynamic result = JsonConvert.DeserializeObject(SwaggerMethods.GenerateEmailAccessHash(email, accessUrl));
            }
            catch (Exception e)
            {
                error = e.Message;
            }

            //Assert
            Assert.AreEqual(expected_error, error);
        }