Skip to content
Snippets Groups Projects
Commit 94658b2b authored by Andreas Romeyke's avatar Andreas Romeyke
Browse files

- added external errorhandler

- simplified code
parent f7c01683
No related branches found
No related tags found
No related merge requests found
Pipeline #4377 failed
...@@ -3,6 +3,7 @@ package org.slub.rosetta.dps.repository.plugin.Validation; ...@@ -3,6 +3,7 @@ package org.slub.rosetta.dps.repository.plugin.Validation;
import org.junit.Before; import org.junit.Before;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.junit.runners.JUnit4; import org.junit.runners.JUnit4;
import org.slub.rosetta.dps.repository.plugin.SLUBXmlErrorHandler;
import org.slub.rosetta.dps.repository.plugin.ValidationCatalogResolver; import org.slub.rosetta.dps.repository.plugin.ValidationCatalogResolver;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -37,7 +38,8 @@ public class TestSLUBValidateDTD { ...@@ -37,7 +38,8 @@ public class TestSLUBValidateDTD {
}; };
List<String> errors = new ArrayList<>(); List<String> errors = new ArrayList<>();
ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true); ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true);
var v = new SLUBValidateDTD( validationCatalogResolver ); SLUBXmlErrorHandler errorHandler = new SLUBXmlErrorHandler();
var v = new SLUBValidateDTD( validationCatalogResolver, errorHandler );
assertNotNull( "validator DTD sucessfully instantiated", v); assertNotNull( "validator DTD sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
boolean res = false; boolean res = false;
...@@ -51,6 +53,29 @@ public class TestSLUBValidateDTD { ...@@ -51,6 +53,29 @@ public class TestSLUBValidateDTD {
assertFalse( has_exception ); assertFalse( has_exception );
assertFalse( res); assertFalse( res);
} }
@org.junit.Test
public void dtd_invalid2() {
String[] catalogs = new String[] {
initp.get("catalog")
};
List<String> errors = new ArrayList<>();
ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true);
SLUBXmlErrorHandler errorHandler = new SLUBXmlErrorHandler();
var v = new SLUBValidateDTD( validationCatalogResolver, errorHandler );
assertNotNull( "validator DTD sucessfully instantiated", v);
var has_exception = false;
boolean res = false;
try {
var doc = "resources/test/invalid/xhtml/xhtml11-sample.invalid.xml";
res = v.validateAgainst(doc);
System.out.println("validating " + doc + " resulting in " + res);
} catch ( Exception e) {
has_exception = true;
}
assertFalse( has_exception );
assertFalse( res);
}
@org.junit.Test @org.junit.Test
/** regression: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.util.Map.containsKey(Object)" because "this.fTableOfIDAttributeNames" is null */ /** regression: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.util.Map.containsKey(Object)" because "this.fTableOfIDAttributeNames" is null */
...@@ -61,14 +86,16 @@ public class TestSLUBValidateDTD { ...@@ -61,14 +86,16 @@ public class TestSLUBValidateDTD {
List<String> errors = new ArrayList<>(); List<String> errors = new ArrayList<>();
ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true); ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true);
var v = new SLUBValidateDTD( validationCatalogResolver ); SLUBXmlErrorHandler errorHandler = new SLUBXmlErrorHandler();
var v = new SLUBValidateDTD( validationCatalogResolver, errorHandler );
assertNotNull( "validator DTD sucessfully instantiated", v); assertNotNull( "validator DTD sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
boolean res = false; boolean res = false;
try { try {
var doc = "resources/test/valid/mathml/mathml1.example1.xml"; var doc = "resources/test/valid/mathml/mathml1.example1.xml";
res = v.validateAgainst(doc); res = v.validateAgainst(doc);
System.out.println("validating " + doc + " resulting in " + res+ " :" + v.get_errors()); System.out.println("validating " + doc + " resulting in " + res);
} catch ( Exception e) { } catch ( Exception e) {
e.printStackTrace(); e.printStackTrace();
has_exception = true; has_exception = true;
...@@ -85,14 +112,17 @@ public class TestSLUBValidateDTD { ...@@ -85,14 +112,17 @@ public class TestSLUBValidateDTD {
}; };
List<String> errors = new ArrayList<>(); List<String> errors = new ArrayList<>();
ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true); ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true);
var v = new SLUBValidateDTD( validationCatalogResolver ); SLUBXmlErrorHandler errorHandler = new SLUBXmlErrorHandler();
var v = new SLUBValidateDTD( validationCatalogResolver , errorHandler);
assertNotNull( "validator DTD sucessfully instantiated", v); assertNotNull( "validator DTD sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
boolean res = false; boolean res = false;
try { try {
var doc = "resources/test/valid/mathml/mathml2.example1.xml"; var doc = "resources/test/valid/mathml/mathml2.example1.xml";
res = v.validateAgainst(doc); res = v.validateAgainst(doc);
System.out.println("validating " + doc + " resulting in " + res+ " :" + v.get_errors()); System.out.println("validating " + doc + " resulting in " + res);
System.out.println("RES: " + errorHandler.get_log() );
} catch ( Exception e) { } catch ( Exception e) {
e.printStackTrace(); e.printStackTrace();
has_exception = true; has_exception = true;
...@@ -108,7 +138,8 @@ public class TestSLUBValidateDTD { ...@@ -108,7 +138,8 @@ public class TestSLUBValidateDTD {
String[] catalogs = new String[0]; String[] catalogs = new String[0];
List<String> errors = new ArrayList<>(); List<String> errors = new ArrayList<>();
ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true); ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true);
var v = new SLUBValidateDTD( validationCatalogResolver ); SLUBXmlErrorHandler errorHandler = new SLUBXmlErrorHandler();
var v = new SLUBValidateDTD( validationCatalogResolver, errorHandler );
assertNotNull( "validator DTD sucessfully instantiated", v); assertNotNull( "validator DTD sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
boolean res = false; boolean res = false;
...@@ -132,7 +163,8 @@ public class TestSLUBValidateDTD { ...@@ -132,7 +163,8 @@ public class TestSLUBValidateDTD {
}; };
List<String> errors = new ArrayList<>(); List<String> errors = new ArrayList<>();
ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true); ValidationCatalogResolver validationCatalogResolver = new ValidationCatalogResolver(catalogs, errors, true);
var v = new SLUBValidateDTD( validationCatalogResolver ); SLUBXmlErrorHandler errorHandler = new SLUBXmlErrorHandler();
var v = new SLUBValidateDTD( validationCatalogResolver, errorHandler );
assertNotNull( "validator DTD sucessfully instantiated", v); assertNotNull( "validator DTD sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
boolean res = false; boolean res = false;
......
...@@ -10,10 +10,8 @@ import org.slub.rosetta.dps.repository.plugin.ValidationSchema; ...@@ -10,10 +10,8 @@ import org.slub.rosetta.dps.repository.plugin.ValidationSchema;
import java.io.File; import java.io.File;
import java.net.URI; import java.net.URI;
import java.net.URISyntaxException; import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
...@@ -53,8 +51,8 @@ public class TestSLUBValidateSchema { ...@@ -53,8 +51,8 @@ public class TestSLUBValidateSchema {
@org.junit.Test @org.junit.Test
public void schema_valid() { public void schema_valid() {
List<String> errors = new ArrayList<>();
ValidationResourceResolver validationResourceResolver = new ValidationResourceResolver(mock.getNamespaceSchemaMap(), errors, true); ValidationResourceResolver validationResourceResolver = new ValidationResourceResolver(mock.getNamespaceSchemaMap(), true);
var v = new SLUBValidateSchema(validationResourceResolver); var v = new SLUBValidateSchema(validationResourceResolver);
assertNotNull( "validator schema sucessfully instantiated", v); assertNotNull( "validator schema sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
...@@ -72,8 +70,7 @@ public class TestSLUBValidateSchema { ...@@ -72,8 +70,7 @@ public class TestSLUBValidateSchema {
@org.junit.Test @org.junit.Test
public void schema_invalid() { public void schema_invalid() {
List<String> errors = new ArrayList<>(); ValidationResourceResolver validationResourceResolver = new ValidationResourceResolver(mock.getNamespaceSchemaMap(), true);
ValidationResourceResolver validationResourceResolver = new ValidationResourceResolver(mock.getNamespaceSchemaMap(), errors, true);
var v = new SLUBValidateSchema(validationResourceResolver); var v = new SLUBValidateSchema(validationResourceResolver);
assertNotNull( "validator schema sucessfully instantiated", v); assertNotNull( "validator schema sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
...@@ -92,19 +89,15 @@ public class TestSLUBValidateSchema { ...@@ -92,19 +89,15 @@ public class TestSLUBValidateSchema {
@org.junit.Test @org.junit.Test
public void check_import_regression() { public void check_import_regression() {
List<String> errors = new ArrayList<>();
Set<ValidationSchema> nssm = new HashSet<>(); Set<ValidationSchema> nssm = new HashSet<>();
Set<ValidationSchema> old = mock.getNamespaceSchemaMap(); Set<ValidationSchema> old = mock.getNamespaceSchemaMap();
for (ValidationSchema val : old) { // filter Atoim out to trigger error
var i = old.iterator();
while (i.hasNext()) { // filter Atoim out to trigger error
var val = i.next();
System.out.println("###### " + val.nameSpace); System.out.println("###### " + val.nameSpace);
if (!val.nameSpace.equals("http://www.w3.org/2005/Atom")) { if (!val.nameSpace.equals("http://www.w3.org/2005/Atom")) {
nssm.add(val); nssm.add(val);
} }
} }
ValidationResourceResolver validationResourceResolver = new ValidationResourceResolver(nssm, errors, true); ValidationResourceResolver validationResourceResolver = new ValidationResourceResolver(nssm, true);
var v = new SLUBValidateSchema(validationResourceResolver); var v = new SLUBValidateSchema(validationResourceResolver);
assertNotNull( "validator schema sucessfully instantiated", v); assertNotNull( "validator schema sucessfully instantiated", v);
var has_exception = false; var has_exception = false;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment