mess9

Untitled

Jan 26th, 2021
662
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package ru.rostelecom.eip2.steps.cms.order.type.localsystemid;
  2.  
  3. import io.qameta.allure.Allure;
  4. import io.qameta.allure.Step;
  5. import io.restassured.response.ExtractableResponse;
  6. import io.restassured.response.Response;
  7. import org.assertj.core.api.SoftAssertions;
  8. import ru.rostelecom.database.entities.dto.cmsdwh.CmsOrderTypeLocalSystemIdDb;
  9. import ru.rostelecom.model.OrderCms;
  10.  
  11. import static ru.rostelecom.execution.jira.Watcher.TEST_STEP_MARKER;
  12.  
  13. public class CmsOrderTypeLocalSystemIdAssertionsStep {
  14.  
  15.     @Step("Сверка ответа метода с данными полученными из БД" + TEST_STEP_MARKER)
  16.     public static void checkOrderCmsResponse(String caseKey, Integer stepNumber, CmsOrderTypeLocalSystemIdDb db, OrderCms r) {
  17.         SoftAssertions softy = new SoftAssertions();
  18.  
  19.         softy.assertThat(r.getId().getLocalSystemId())
  20.                 .as("LOCALSYSTEMID")
  21.                 .isEqualTo(db.getLocalSystemId());
  22.         softy.assertThat(r.getId().getAppPkid())
  23.                 .as("APP_PKID")
  24.                 .isEqualTo(db.getAppPkid());
  25.         softy.assertThat(r.getId().getVersion())
  26.                 .as("VERSION")
  27.                 .isEqualTo(db.getVersion());
  28.         softy.assertThat(r.getApplicationName())
  29.                 .as("APPLICATION_NAME")
  30.                 .isEqualTo(db.getApplicationName());
  31.         softy.assertThat(r.getCurrentVersion())
  32.                 .as("CURRENT_VERSION")
  33.                 .isEqualTo(db.getCurrentVersion());
  34.         softy.assertThat(r.getDeleted().compareTo(false))
  35.                 .as("DELETED")
  36.                 .isEqualTo(db.getDeleted());
  37.         softy.assertThat(r.getForm())
  38.                 .as("FORM")
  39.                 .isEqualTo(db.getForm());
  40.         softy.assertThat(r.getSaveOptions())
  41.                 .as("SAVE_OPTIONS")
  42.                 .isEqualTo(db.getSaveOptions());
  43.  
  44.         softy.assertThat(r.getContract().getId().getLocalSystemId())
  45.                 .as("CONTRACT_LOCALSYSTEMID")
  46.                 .isEqualTo(db.getContactLocalSystemId());
  47.         softy.assertThat(r.getContract().getId().getAppPkid())
  48.                 .as("CONTRACT_APP_PKID")
  49.                 .isEqualTo(db.getContactAppPkid());
  50.         softy.assertThat(r.getContract().getId().getVersion())
  51.                 .as("CONTRACT_VERSION")
  52.                 .isEqualTo(db.getContractVersion());
  53.  
  54.         softy.assertThat(r.getStatus().getId().getLocalSystemId())
  55.                 .as("STATUS_LOCALSYSTEMID")
  56.                 .isEqualTo(db.getStatusLocalSystemId());
  57.         softy.assertThat(r.getStatus().getId().getAppPkid())
  58.                 .as("STATUS_APP_PKID")
  59.                 .isEqualTo(db.getStatusAppPkid());
  60.         softy.assertThat(r.getStatus().getId().getVersion())
  61.                 .as("STATUS_VERSION")
  62.                 .isEqualTo(db.getStatusVersion());
  63.  
  64.         //todo проверка fld полей добавить бы. но чёт затык небольшой
  65.  
  66.         softy.assertAll();
  67.     }
  68.  
  69.     @Step("Проверка корректности сообщения об ошибке (невалидный localsystemid)"+ TEST_STEP_MARKER)
  70.     public static void checkErrorDataNotFound(String testCaseKey, Integer stepNumber, ExtractableResponse<Response> resp) {
  71.         Allure.addAttachment("ответ", "text/json", resp.body().asString());
  72.         SoftAssertions softy = new SoftAssertions();
  73.  
  74.         softy.assertThat(resp.response().statusCode())
  75.                 .as("статус код при ошибке DATA NOT FOUND должен быть 474")
  76.                 .isEqualTo(474);
  77.         softy.assertThat(resp.response().getBody().jsonPath().getString("code"))
  78.                 .as("сообщение в блоке \"code\" ошибки должно быть - DATA_NOT_FOUND")
  79.                 .isEqualTo("DATA_NOT_FOUND");
  80.         softy.assertThat(resp.response().getBody().jsonPath().getString("message"))
  81.                 .as("блок \"message\" должен быть вида:\n" +
  82.                         "\"DATA_NOT_FOUND: ServicePort for localSystemId = <localsystemid>, type = <servicetype> not found\"")
  83.                 .isEqualTo("DATA_NOT_FOUND: Order for localSystemId = 'bla-bla-blah', type = 'Inet_VPN' not found");
  84.         softy.assertThat(resp.response().getBody().jsonPath().getString("source"))
  85.                 .as("блок \"source\" должен указывать на модуль к которому обращается метод")
  86.                 .isEqualTo("dwh-cms-adapter-2.13.0");
  87.  
  88.         softy.assertAll();
  89.     }
  90.  
  91.     @Step("Проверка корректности сообщения об ошибке (невалидный serviceType)"+ TEST_STEP_MARKER)
  92.     public static void checkErrorBadRequest(String testCaseKey, Integer stepNumber, ExtractableResponse<Response> resp) {
  93.         Allure.addAttachment("ответ", "text/json", resp.body().asString());
  94.         SoftAssertions softy = new SoftAssertions();
  95.  
  96.         softy.assertThat(resp.response().statusCode())
  97.                 .as("статус код при ошибке Bad Request должен быть 400")
  98.                 .isEqualTo(400);
  99.         softy.assertThat(resp.response().getBody().jsonPath().getString("status"))
  100.                 .as("поле status")
  101.                 .isEqualTo("400");
  102.         softy.assertThat(resp.response().getBody().jsonPath().getString("error"))
  103.                 .as("поле error")
  104.                 .isEqualTo("Bad Request");
  105.         softy.assertThat(resp.response().getBody().jsonPath().getString("path"))
  106.                 .as("поле path")
  107.                 .isEqualTo("/FWS/eip-canonical-service-rest/orders/cms/Very_Inet_VPN/E41B8646523DFC78C32575E6001BCDF6");
  108.         softy.assertThat(resp.response().getBody().jsonPath().getString("message"))
  109.                 .as("в блоке \"message\" описывается что переданный сервис тайп не найден в enum обработчика")
  110.                 .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");
  111.  
  112.         softy.assertAll();
  113.     }
  114.  
  115.     @Step("Проверка корректности сообщения об ошибке (не переданы параметры)" + TEST_STEP_MARKER)
  116.     public static void checkErrorNotFound(String testCaseKey, Integer stepNumber, ExtractableResponse<Response> resp) {
  117.         Allure.addAttachment("ответ", "text/json", resp.body().asString());
  118.         SoftAssertions softy = new SoftAssertions();
  119.  
  120.         softy.assertThat(resp.response().statusCode())
  121.                 .as("status code")
  122.                 .isEqualTo(404);
  123.         softy.assertThat(resp.response().getBody().jsonPath().getString("status"))
  124.                 .as("поле status")
  125.                 .isEqualTo("404");
  126.         softy.assertThat(resp.response().getBody().jsonPath().getString("error"))
  127.                 .as("поле error")
  128.                 .isEqualTo("Not Found");
  129.         softy.assertThat(resp.response().getBody().jsonPath().getString("message"))
  130.                 .as("поле message")
  131.                 .isEqualTo("No message available");
  132.         softy.assertThat(resp.response().getBody().jsonPath().getString("path"))
  133.                 .as("поле path")
  134.                 .isEqualTo("/FWS/eip-canonical-service-rest/orders/cms/");
  135.  
  136.         softy.assertAll();
  137.     }
  138. }
  139.  
RAW Paste Data