Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ru.rostelecom.eip2.steps.cms.order.type.localsystemid;
- import io.qameta.allure.Allure;
- import io.qameta.allure.Step;
- import io.restassured.response.ExtractableResponse;
- import io.restassured.response.Response;
- import org.assertj.core.api.SoftAssertions;
- import ru.rostelecom.database.entities.dto.cmsdwh.CmsOrderTypeLocalSystemIdDb;
- import ru.rostelecom.model.OrderCms;
- import static ru.rostelecom.execution.jira.Watcher.TEST_STEP_MARKER;
- public class CmsOrderTypeLocalSystemIdAssertionsStep {
- @Step("Сверка ответа метода с данными полученными из БД" + TEST_STEP_MARKER)
- public static void checkOrderCmsResponse(String caseKey, Integer stepNumber, CmsOrderTypeLocalSystemIdDb db, OrderCms r) {
- SoftAssertions softy = new SoftAssertions();
- softy.assertThat(r.getId().getLocalSystemId())
- .as("LOCALSYSTEMID")
- .isEqualTo(db.getLocalSystemId());
- softy.assertThat(r.getId().getAppPkid())
- .as("APP_PKID")
- .isEqualTo(db.getAppPkid());
- softy.assertThat(r.getId().getVersion())
- .as("VERSION")
- .isEqualTo(db.getVersion());
- softy.assertThat(r.getApplicationName())
- .as("APPLICATION_NAME")
- .isEqualTo(db.getApplicationName());
- softy.assertThat(r.getCurrentVersion())
- .as("CURRENT_VERSION")
- .isEqualTo(db.getCurrentVersion());
- softy.assertThat(r.getDeleted().compareTo(false))
- .as("DELETED")
- .isEqualTo(db.getDeleted());
- softy.assertThat(r.getForm())
- .as("FORM")
- .isEqualTo(db.getForm());
- softy.assertThat(r.getSaveOptions())
- .as("SAVE_OPTIONS")
- .isEqualTo(db.getSaveOptions());
- softy.assertThat(r.getContract().getId().getLocalSystemId())
- .as("CONTRACT_LOCALSYSTEMID")
- .isEqualTo(db.getContactLocalSystemId());
- softy.assertThat(r.getContract().getId().getAppPkid())
- .as("CONTRACT_APP_PKID")
- .isEqualTo(db.getContactAppPkid());
- softy.assertThat(r.getContract().getId().getVersion())
- .as("CONTRACT_VERSION")
- .isEqualTo(db.getContractVersion());
- softy.assertThat(r.getStatus().getId().getLocalSystemId())
- .as("STATUS_LOCALSYSTEMID")
- .isEqualTo(db.getStatusLocalSystemId());
- softy.assertThat(r.getStatus().getId().getAppPkid())
- .as("STATUS_APP_PKID")
- .isEqualTo(db.getStatusAppPkid());
- softy.assertThat(r.getStatus().getId().getVersion())
- .as("STATUS_VERSION")
- .isEqualTo(db.getStatusVersion());
- //todo проверка fld полей добавить бы. но чёт затык небольшой
- softy.assertAll();
- }
- @Step("Проверка корректности сообщения об ошибке (невалидный localsystemid)"+ TEST_STEP_MARKER)
- public static void checkErrorDataNotFound(String testCaseKey, Integer stepNumber, ExtractableResponse<Response> resp) {
- Allure.addAttachment("ответ", "text/json", resp.body().asString());
- SoftAssertions softy = new SoftAssertions();
- softy.assertThat(resp.response().statusCode())
- .as("статус код при ошибке DATA NOT FOUND должен быть 474")
- .isEqualTo(474);
- softy.assertThat(resp.response().getBody().jsonPath().getString("code"))
- .as("сообщение в блоке \"code\" ошибки должно быть - DATA_NOT_FOUND")
- .isEqualTo("DATA_NOT_FOUND");
- softy.assertThat(resp.response().getBody().jsonPath().getString("message"))
- .as("блок \"message\" должен быть вида:\n" +
- "\"DATA_NOT_FOUND: ServicePort for localSystemId = <localsystemid>, type = <servicetype> not found\"")
- .isEqualTo("DATA_NOT_FOUND: Order for localSystemId = 'bla-bla-blah', type = 'Inet_VPN' not found");
- softy.assertThat(resp.response().getBody().jsonPath().getString("source"))
- .as("блок \"source\" должен указывать на модуль к которому обращается метод")
- .isEqualTo("dwh-cms-adapter-2.13.0");
- softy.assertAll();
- }
- @Step("Проверка корректности сообщения об ошибке (невалидный serviceType)"+ TEST_STEP_MARKER)
- public static void checkErrorBadRequest(String testCaseKey, Integer stepNumber, ExtractableResponse<Response> resp) {
- Allure.addAttachment("ответ", "text/json", resp.body().asString());
- SoftAssertions softy = new SoftAssertions();
- softy.assertThat(resp.response().statusCode())
- .as("статус код при ошибке Bad Request должен быть 400")
- .isEqualTo(400);
- softy.assertThat(resp.response().getBody().jsonPath().getString("status"))
- .as("поле status")
- .isEqualTo("400");
- softy.assertThat(resp.response().getBody().jsonPath().getString("error"))
- .as("поле error")
- .isEqualTo("Bad Request");
- softy.assertThat(resp.response().getBody().jsonPath().getString("path"))
- .as("поле path")
- .isEqualTo("/FWS/eip-canonical-service-rest/orders/cms/Very_Inet_VPN/E41B8646523DFC78C32575E6001BCDF6");
- softy.assertThat(resp.response().getBody().jsonPath().getString("message"))
- .as("в блоке \"message\" описывается что переданный сервис тайп не найден в enum обработчика")
- .isEqualTo("Failed to convert value of type 'java.lang.String' to required type 'ru.rt.eip.customerservice.domain.enums.OrderServiceType'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@org.springframework.web.bind.annotation.PathVariable ru.rt.eip.customerservice.domain.enums.OrderServiceType] for value 'Very_Inet_VPN'; nested exception is java.lang.IllegalArgumentException: No enum constant ru.rt.eip.customerservice.domain.enums.OrderServiceType.Very_Inet_VPN");
- softy.assertAll();
- }
- @Step("Проверка корректности сообщения об ошибке (не переданы параметры)" + TEST_STEP_MARKER)
- public static void checkErrorNotFound(String testCaseKey, Integer stepNumber, ExtractableResponse<Response> resp) {
- Allure.addAttachment("ответ", "text/json", resp.body().asString());
- SoftAssertions softy = new SoftAssertions();
- softy.assertThat(resp.response().statusCode())
- .as("status code")
- .isEqualTo(404);
- softy.assertThat(resp.response().getBody().jsonPath().getString("status"))
- .as("поле status")
- .isEqualTo("404");
- softy.assertThat(resp.response().getBody().jsonPath().getString("error"))
- .as("поле error")
- .isEqualTo("Not Found");
- softy.assertThat(resp.response().getBody().jsonPath().getString("message"))
- .as("поле message")
- .isEqualTo("No message available");
- softy.assertThat(resp.response().getBody().jsonPath().getString("path"))
- .as("поле path")
- .isEqualTo("/FWS/eip-canonical-service-rest/orders/cms/");
- softy.assertAll();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement