mirror of
https://github.com/itplr-kosit/validator.git
synced 2026-05-25 16:55:39 +00:00
test custom resolving strategy
This commit is contained in:
parent
bcbb0de09c
commit
4d4aa5ea60
8 changed files with 41 additions and 7 deletions
|
|
@ -181,6 +181,9 @@ public class ConfigurationLoader {
|
||||||
* @return this
|
* @return this
|
||||||
*/
|
*/
|
||||||
public ConfigurationLoader setResolvingMode(final ResolvingMode mode) {
|
public ConfigurationLoader setResolvingMode(final ResolvingMode mode) {
|
||||||
|
if (this.resolvingConfigurationStrategy != null) {
|
||||||
|
log.warn("Ignoring resolving mode configuration since a custom strategy is already defined");
|
||||||
|
}
|
||||||
this.resolvingMode = mode;
|
this.resolvingMode = mode;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ package de.kosit.validationtool.config;
|
||||||
|
|
||||||
import static de.kosit.validationtool.config.ConfigurationBuilder.report;
|
import static de.kosit.validationtool.config.ConfigurationBuilder.report;
|
||||||
import static de.kosit.validationtool.config.ConfigurationBuilder.schematron;
|
import static de.kosit.validationtool.config.ConfigurationBuilder.schematron;
|
||||||
import static de.kosit.validationtool.config.TestScenarioFactory.createSimpleConfiguration;
|
import static de.kosit.validationtool.config.TestConfigurationFactory.createSimpleConfiguration;
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
package de.kosit.validationtool.config;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import de.kosit.validationtool.api.Configuration;
|
||||||
|
import de.kosit.validationtool.api.ResolvingConfigurationStrategy;
|
||||||
|
import de.kosit.validationtool.impl.ResolvingMode;
|
||||||
|
import de.kosit.validationtool.impl.xml.StrictLocalResolvingStrategy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Penski
|
||||||
|
*/
|
||||||
|
public class ConfigurationLoaderTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCustomResolvingStrategy() {
|
||||||
|
final ConfigurationLoader loader = TestConfigurationFactory.loadSimpleConfiguration();
|
||||||
|
final ResolvingConfigurationStrategy strategy = mock(ResolvingConfigurationStrategy.class);
|
||||||
|
loader.setResolvingStrategy(strategy);
|
||||||
|
loader.setResolvingMode(ResolvingMode.STRICT_LOCAL);
|
||||||
|
final Configuration config = loader.build();
|
||||||
|
assertThat(config.getContentRepository().getResolvingConfigurationStrategy()).isNotInstanceOf(StrictLocalResolvingStrategy.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package de.kosit.validationtool.config;
|
package de.kosit.validationtool.config;
|
||||||
|
|
||||||
import static de.kosit.validationtool.config.TestScenarioFactory.createScenario;
|
import static de.kosit.validationtool.config.TestConfigurationFactory.createScenario;
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package de.kosit.validationtool.config;
|
package de.kosit.validationtool.config;
|
||||||
|
|
||||||
import static de.kosit.validationtool.config.TestScenarioFactory.createSimpleConfiguration;
|
import static de.kosit.validationtool.config.TestConfigurationFactory.createSimpleConfiguration;
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ import de.kosit.validationtool.impl.ResolvingMode;
|
||||||
/**
|
/**
|
||||||
* @author Andreas Penski
|
* @author Andreas Penski
|
||||||
*/
|
*/
|
||||||
public class TestScenarioFactory {
|
public class TestConfigurationFactory {
|
||||||
|
|
||||||
public static ConfigurationBuilder createSimpleConfiguration() {
|
public static ConfigurationBuilder createSimpleConfiguration() {
|
||||||
return Configuration.create().name("Simple-API").author("me").description("test desc").date(new Date())
|
return Configuration.create().name("Simple-API").author("me").description("test desc").date(new Date())
|
||||||
|
|
@ -24,6 +24,10 @@ public class TestScenarioFactory {
|
||||||
.resolvingMode(ResolvingMode.STRICT_RELATIVE).useRepository(Simple.REPOSITORY_URI);
|
.resolvingMode(ResolvingMode.STRICT_RELATIVE).useRepository(Simple.REPOSITORY_URI);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static ConfigurationLoader loadSimpleConfiguration() {
|
||||||
|
return Configuration.load(Simple.SCENARIOS, Simple.REPOSITORY_URI);
|
||||||
|
}
|
||||||
|
|
||||||
public static ScenarioBuilder createScenario() {
|
public static ScenarioBuilder createScenario() {
|
||||||
return scenario("simple").validate(schema("Sample Schema").schemaLocation(URI.create("simple.xsd")))
|
return scenario("simple").validate(schema("Sample Schema").schemaLocation(URI.create("simple.xsd")))
|
||||||
.with(report("Report für eRechnung").source("report.xsl")).acceptWith("count(//test:rejected) = 0")
|
.with(report("Report für eRechnung").source("report.xsl")).acceptWith("count(//test:rejected) = 0")
|
||||||
|
|
@ -20,7 +20,7 @@ import com.sun.net.httpserver.Headers;
|
||||||
import com.sun.net.httpserver.HttpExchange;
|
import com.sun.net.httpserver.HttpExchange;
|
||||||
|
|
||||||
import de.kosit.validationtool.api.Configuration;
|
import de.kosit.validationtool.api.Configuration;
|
||||||
import de.kosit.validationtool.config.TestScenarioFactory;
|
import de.kosit.validationtool.config.TestConfigurationFactory;
|
||||||
import de.kosit.validationtool.impl.ConversionService;
|
import de.kosit.validationtool.impl.ConversionService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -35,7 +35,7 @@ public class ConfigHandlerTest {
|
||||||
final OutputStream stream = mock(OutputStream.class);
|
final OutputStream stream = mock(OutputStream.class);
|
||||||
when(exchange.getResponseHeaders()).thenReturn(headers);
|
when(exchange.getResponseHeaders()).thenReturn(headers);
|
||||||
when(exchange.getResponseBody()).thenReturn(stream);
|
when(exchange.getResponseBody()).thenReturn(stream);
|
||||||
final Configuration config = TestScenarioFactory.createSimpleConfiguration().build();
|
final Configuration config = TestConfigurationFactory.createSimpleConfiguration().build();
|
||||||
final ConfigHandler handler = new ConfigHandler(config, new ConversionService());
|
final ConfigHandler handler = new ConfigHandler(config, new ConversionService());
|
||||||
handler.handle(exchange);
|
handler.handle(exchange);
|
||||||
verify(exchange, times(1)).sendResponseHeaders(ConfigHandler.OK, 0);
|
verify(exchange, times(1)).sendResponseHeaders(ConfigHandler.OK, 0);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package de.kosit.validationtool.impl.tasks;
|
package de.kosit.validationtool.impl.tasks;
|
||||||
|
|
||||||
import static de.kosit.validationtool.config.TestScenarioFactory.createScenario;
|
import static de.kosit.validationtool.config.TestConfigurationFactory.createScenario;
|
||||||
import static de.kosit.validationtool.impl.Helper.serialize;
|
import static de.kosit.validationtool.impl.Helper.serialize;
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
import static org.mockito.ArgumentMatchers.any;
|
import static org.mockito.ArgumentMatchers.any;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue