From 17783b4c8bcfb22fca4a4a70d5c71991c0d52c66 Mon Sep 17 00:00:00 2001 From: Arnold Galovics Date: Tue, 14 May 2024 18:37:08 +0200 Subject: [PATCH] #129: Recursive exception when comparing swagger files --- swagger-brake-integration-tests/build.gradle | 4 ++-- .../artifactory/factory/WebDriverFactory.java | 4 ++-- .../swagger/brake/core/model/store/SchemaStore.java | 11 ++++++++--- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/swagger-brake-integration-tests/build.gradle b/swagger-brake-integration-tests/build.gradle index 57c76da5..f8d80e07 100644 --- a/swagger-brake-integration-tests/build.gradle +++ b/swagger-brake-integration-tests/build.gradle @@ -6,8 +6,8 @@ dependencies { testImplementation "ch.qos.logback:logback-core:1.2.11" testImplementation "ch.qos.logback:logback-classic:1.2.11" testImplementation "org.awaitility:awaitility:4.2.0" - testImplementation "org.seleniumhq.selenium:selenium-java:4.14.1" - testImplementation "org.seleniumhq.selenium:selenium-chrome-driver:4.14.1" + testImplementation "org.seleniumhq.selenium:selenium-java:4.20.0" + testImplementation "org.seleniumhq.selenium:selenium-chrome-driver:4.20.0" testImplementation "io.github.bonigarcia:webdrivermanager:5.6.0" testImplementation "org.testcontainers:testcontainers:1.19.1" testImplementation "org.apache.httpcomponents:httpclient:4.5.14" diff --git a/swagger-brake-integration-tests/src/test/java/io/redskap/swagger/brake/integration/artifactory/factory/WebDriverFactory.java b/swagger-brake-integration-tests/src/test/java/io/redskap/swagger/brake/integration/artifactory/factory/WebDriverFactory.java index f9a407be..c3d5ea22 100644 --- a/swagger-brake-integration-tests/src/test/java/io/redskap/swagger/brake/integration/artifactory/factory/WebDriverFactory.java +++ b/swagger-brake-integration-tests/src/test/java/io/redskap/swagger/brake/integration/artifactory/factory/WebDriverFactory.java @@ -9,8 +9,8 @@ public class WebDriverFactory { private static final String CHROME_DRIVER_VERSION_ENV_VAR = "CHROME_DRIVER_VERSION"; private static final String CHROME_BROWSER_VERSION_ENV_VAR = "CHROME_BROWSER_VERSION"; - public static final String DEFAULT_DRIVER_VERSION = "117.0.5938.132"; - public static final String DEFAULT_BROWSER_VERSION = "117.0.5938.132"; + public static final String DEFAULT_DRIVER_VERSION = "124.0.6367.207"; + public static final String DEFAULT_BROWSER_VERSION = "124.0.6367.208"; public static WebDriver create() { WebDriverManager diff --git a/swagger-brake/src/main/java/io/redskap/swagger/brake/core/model/store/SchemaStore.java b/swagger-brake/src/main/java/io/redskap/swagger/brake/core/model/store/SchemaStore.java index c18d491d..fdf5252f 100644 --- a/swagger-brake/src/main/java/io/redskap/swagger/brake/core/model/store/SchemaStore.java +++ b/swagger-brake/src/main/java/io/redskap/swagger/brake/core/model/store/SchemaStore.java @@ -1,11 +1,10 @@ package io.redskap.swagger.brake.core.model.store; +import io.swagger.v3.oas.models.media.Schema; import java.util.Map; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Supplier; - -import io.swagger.v3.oas.models.media.Schema; import lombok.RequiredArgsConstructor; @RequiredArgsConstructor @@ -18,6 +17,12 @@ public Optional getNative(String name) { } public Optional getTransformer(String name, Supplier provider) { - return Optional.ofNullable(transformerSchemas.computeIfAbsent(name, (k) -> provider.get())); + if (!transformerSchemas.containsKey(name)){ + io.redskap.swagger.brake.core.model.Schema schema = provider.get(); + transformerSchemas.put(name, schema); + } + + return Optional.ofNullable(transformerSchemas.get(name)); + } }