You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/03/19 19:00:24 UTC
[isis] 02/08: ISIS-2450: fixes unit tests
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch release-2.0.0-M5-RC1
in repository https://gitbox.apache.org/repos/asf/isis.git
commit f002e71f5ed9bfd78a690f87138ee9c49c5d1fc0
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Thu Mar 18 20:22:12 2021 +0000
ISIS-2450: fixes unit tests
---
.../org/apache/isis/core/config/IsisConfiguration.java | 12 ------------
.../extensions/cors/impl/IsisModuleExtCorsImpl.java | 18 ++++++++++++------
.../cors/impl/IsisModuleExtCorsImplTest.java | 15 +++++++++------
3 files changed, 21 insertions(+), 24 deletions(-)
diff --git a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
index 2b5108d..3721f56 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
@@ -100,18 +100,6 @@ public class IsisConfiguration {
this.environment = environment;
}
- @Inject @Named("isis-settings")
- @Getter(AccessLevel.PRIVATE) private Map<String, String> isisSettings;
- /**
- * All of the isis configuration properties, gathered together as an immutable map.
- */
- public Map<String, String> getAsMap() {
- return isisSettings!=null
- ? Collections.unmodifiableMap(isisSettings)
- : Collections.emptyMap();
- }
-
-
private final Security security = new Security();
@Data
public static class Security {
diff --git a/extensions/vro/cors/impl/src/main/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImpl.java b/extensions/vro/cors/impl/src/main/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImpl.java
index 76df208..74cb3dc 100644
--- a/extensions/vro/cors/impl/src/main/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImpl.java
+++ b/extensions/vro/cors/impl/src/main/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImpl.java
@@ -34,6 +34,7 @@ import org.springframework.web.filter.CorsFilter;
import org.apache.isis.applib.annotation.OrderPrecedence;
import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.RestEasyConfiguration;
import lombok.val;
import lombok.extern.log4j.Log4j2;
@@ -48,18 +49,23 @@ import lombok.extern.log4j.Log4j2;
public class IsisModuleExtCorsImpl {
@Bean
- public FilterRegistrationBean<Filter> createCorsFilterRegistration(IsisConfiguration configuration) {
-
- final Map<String, String> cfgMap = configuration.getAsMap();
- final String resteasyBase = cfgMap.getOrDefault("resteasy.jaxrs.defaultPath", "/restful/*");
+ public FilterRegistrationBean<Filter> createCorsFilterRegistration(
+ final IsisConfiguration isisConfiguration,
+ final RestEasyConfiguration restEasyConfiguration) {
+
+ String resteasyBase = restEasyConfiguration.getJaxrs().getDefaultPath();
+ if(!resteasyBase.endsWith("/*")) {
+ resteasyBase = resteasyBase + "/*";
+ }
log.info("Setting up CORS to filter resteasy-base at '{}' with {}",
resteasyBase,
- configuration.getExtensions().getCors());
+ isisConfiguration.getExtensions().getCors());
final FilterRegistrationBean<Filter> filterRegistrationBean = new FilterRegistrationBean<>();
- filterRegistrationBean.setFilter(createCorsFilter(configuration));
+ filterRegistrationBean.setFilter(createCorsFilter(isisConfiguration));
filterRegistrationBean.setUrlPatterns(Collections.singletonList(resteasyBase));
filterRegistrationBean.setOrder(OrderPrecedence.EARLY - 100);
+
return filterRegistrationBean;
}
diff --git a/extensions/vro/cors/impl/src/test/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImplTest.java b/extensions/vro/cors/impl/src/test/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImplTest.java
index 4d213eb..b8ffcd9 100644
--- a/extensions/vro/cors/impl/src/test/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImplTest.java
+++ b/extensions/vro/cors/impl/src/test/java/org/apache/isis/extensions/cors/impl/IsisModuleExtCorsImplTest.java
@@ -24,6 +24,7 @@ import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.RestEasyConfiguration;
import org.apache.isis.core.metamodel._testing.MetaModelContext_forTesting;
import lombok.val;
@@ -31,24 +32,26 @@ import lombok.val;
class IsisModuleExtCorsImplTest {
private IsisConfiguration isisDefaultConfiguration;
-
+ private RestEasyConfiguration restEasyConfiguration;
+
@BeforeEach
void setUp() {
isisDefaultConfiguration = MetaModelContext_forTesting
.buildDefault()
.getConfiguration();
+ restEasyConfiguration = new RestEasyConfiguration();
}
-
+
@Test
void defaultIsisConfiguration_shouldYieldCorsUrlPatternWithWildcard() {
// given
val isisModuleExtCorsImpl = new IsisModuleExtCorsImpl();
-
+
// when
- val filterRegistration = isisModuleExtCorsImpl.createCorsFilterRegistration(isisDefaultConfiguration);
-
+ val filterRegistration = isisModuleExtCorsImpl.createCorsFilterRegistration(isisDefaultConfiguration, restEasyConfiguration);
+
// then
assertTrue(filterRegistration.getUrlPatterns().contains("/restful/*"));
}
-}
\ No newline at end of file
+}