Fix unit test, handle Pattern special

This commit is contained in:
Andreas Dangel
2018-05-17 20:57:30 +02:00
parent 61ce9ca3b3
commit 787d62420c

View File

@ -25,6 +25,7 @@ import java.util.Map;
import java.util.Properties; import java.util.Properties;
import java.util.Set; import java.util.Set;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import java.util.regex.Pattern;
import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory; import javax.xml.parsers.SAXParserFactory;
@ -452,8 +453,14 @@ public abstract class AbstractRuleSetFactoryTest {
List<PropertyDescriptor<?>> propertyDescriptors2 = rule2.getPropertyDescriptors(); List<PropertyDescriptor<?>> propertyDescriptors2 = rule2.getPropertyDescriptors();
assertEquals(message + ", Rule property descriptor ", propertyDescriptors1, propertyDescriptors2); assertEquals(message + ", Rule property descriptor ", propertyDescriptors1, propertyDescriptors2);
for (int j = 0; j < propertyDescriptors1.size(); j++) { for (int j = 0; j < propertyDescriptors1.size(); j++) {
assertEquals(message + ", Rule property value " + j, rule1.getProperty(propertyDescriptors1.get(j)), Object value1 = rule1.getProperty(propertyDescriptors1.get(j));
rule2.getProperty(propertyDescriptors2.get(j))); Object value2 = rule2.getProperty(propertyDescriptors2.get(j));
// special case for Pattern, there is no equals method
if (propertyDescriptors1.get(j).type() == Pattern.class) {
value1 = ((Pattern) value1).pattern();
value2 = ((Pattern) value2).pattern();
}
assertEquals(message + ", Rule property value " + j, value1, value2);
} }
assertEquals(message + ", Rule property descriptor count", propertyDescriptors1.size(), assertEquals(message + ", Rule property descriptor count", propertyDescriptors1.size(),
propertyDescriptors2.size()); propertyDescriptors2.size());