summaryrefslogtreecommitdiff
path: root/BKUViewer/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'BKUViewer/src/test')
-rw-r--r--BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java66
-rw-r--r--BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/css/CssValidatorTest.java75
-rw-r--r--BKUViewer/src/test/resources/at/gv/egiz/bku/slxhtml/test.xhtml10
-rw-r--r--BKUViewer/src/test/resources/commons-logging.properties1
-rw-r--r--BKUViewer/src/test/resources/log4j.properties19
5 files changed, 171 insertions, 0 deletions
diff --git a/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java b/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java
new file mode 100644
index 00000000..38c64262
--- /dev/null
+++ b/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java
@@ -0,0 +1,66 @@
+/*
+* Copyright 2008 Federal Chancellery Austria and
+* Graz University of Technology
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package at.gv.egiz.bku.slxhtml;
+
+import static org.junit.Assert.*;
+
+import java.io.InputStream;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.junit.Test;
+
+import at.gv.egiz.bku.viewer.ValidationException;
+import at.gv.egiz.bku.viewer.Validator;
+import at.gv.egiz.bku.viewer.ValidatorFactory;
+
+
+public class ValidatorTest {
+
+ private static Log log = LogFactory.getLog(ValidatorTest.class);
+
+ @Test
+ public void testGetInstance() {
+
+ Validator validator = ValidatorFactory.newValidator("application/xhtml+xml");
+
+ assertNotNull(validator);
+
+ }
+
+ @Test
+ public void testValidate() throws ValidationException {
+
+ String slxhtmlFile = "at/gv/egiz/bku/slxhtml/test.xhtml";
+
+ Validator validator = ValidatorFactory.newValidator("application/xhtml+xml");
+
+ ClassLoader cl = ValidatorTest.class.getClassLoader();
+ InputStream slxhtml = cl.getResourceAsStream(slxhtmlFile);
+ long t0 = System.currentTimeMillis();
+ try {
+ validator.validate(slxhtml, null);
+ } catch (ValidationException e) {
+ e.printStackTrace();
+ throw e;
+ }
+ long t1 = System.currentTimeMillis();
+ log.info("Validated SLXHTML file '" + slxhtmlFile + "' in " + (t1 - t0) + "ms.");
+
+ }
+
+}
diff --git a/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/css/CssValidatorTest.java b/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/css/CssValidatorTest.java
new file mode 100644
index 00000000..2b4740f9
--- /dev/null
+++ b/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/css/CssValidatorTest.java
@@ -0,0 +1,75 @@
+/*
+* Copyright 2008 Federal Chancellery Austria and
+* Graz University of Technology
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package at.gv.egiz.bku.slxhtml.css;
+
+import static org.junit.Assert.*;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
+import java.util.Locale;
+import java.util.Properties;
+import java.util.Set;
+
+import org.junit.Test;
+
+import at.gv.egiz.bku.viewer.ValidationException;
+
+public class CssValidatorTest {
+
+ @Test
+ public void testProperties() throws IOException {
+
+ ClassLoader cs = CssValidatorTest.class.getClassLoader();
+ InputStream is = cs.getResourceAsStream("org/w3c/css/properties/SLXHTMLProperties.properties");
+
+ assertNotNull(is);
+
+ Properties cssProperties = new Properties();
+ cssProperties.load(is);
+
+ Set<String> names = cssProperties.stringPropertyNames();
+ for (String name : names) {
+ String className = cssProperties.getProperty(name);
+ try {
+ Class.forName(className);
+ } catch (ClassNotFoundException e) {
+ fail("Implementation class '" + className + "' for property '" + name + "' not found.");
+ }
+
+ }
+
+ }
+
+ @Test(expected=ValidationException.class)
+ public void testValidator() throws UnsupportedEncodingException, ValidationException {
+
+ String css = "@charset \"ABCDEFG\";\n" +
+ " @import url(http://test.abc/test); * { color: black }";
+ ByteArrayInputStream input = new ByteArrayInputStream(css.getBytes("UTF-8"));
+
+ CSSValidatorSLXHTML validator = new CSSValidatorSLXHTML();
+
+ Locale locale = new Locale("de");
+
+ validator.validate(input, locale, "Test", 10);
+
+ }
+
+
+}
diff --git a/BKUViewer/src/test/resources/at/gv/egiz/bku/slxhtml/test.xhtml b/BKUViewer/src/test/resources/at/gv/egiz/bku/slxhtml/test.xhtml
new file mode 100644
index 00000000..cbd29551
--- /dev/null
+++ b/BKUViewer/src/test/resources/at/gv/egiz/bku/slxhtml/test.xhtml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml">
+ <xhtml:head>
+ <xhtml:title>Ein einfaches SLXHTML-Dokument</xhtml:title>
+ <xhtml:style type="text/css">@font-face { color: red }; p { color: red; }</xhtml:style>
+ </xhtml:head>
+ <xhtml:body>
+ <xhtml:p>Ich bin ein einfacher Text in rot.</xhtml:p>
+ </xhtml:body>
+</xhtml:html>
diff --git a/BKUViewer/src/test/resources/commons-logging.properties b/BKUViewer/src/test/resources/commons-logging.properties
new file mode 100644
index 00000000..29292562
--- /dev/null
+++ b/BKUViewer/src/test/resources/commons-logging.properties
@@ -0,0 +1 @@
+org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
diff --git a/BKUViewer/src/test/resources/log4j.properties b/BKUViewer/src/test/resources/log4j.properties
new file mode 100644
index 00000000..053eac17
--- /dev/null
+++ b/BKUViewer/src/test/resources/log4j.properties
@@ -0,0 +1,19 @@
+# loglever DEBUG, appender STDOUT
+log4j.rootLogger=TRACE, STDOUT
+#log4j.logger.at.gv.egiz.slbinding.RedirectEventFilter=DEBUG, STDOUT
+
+# STDOUT appender
+log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
+log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
+#log4j.appender.STDOUT.layout.ConversionPattern=%5p | %d{dd HH:mm:ss,SSS} | %20c | %10t | %m%n
+#log4j.appender.STDOUT.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
+log4j.appender.STDOUT.layout.ConversionPattern=%-5p |%d | %t | %c %x- %m%n
+
+### FILE appender
+#log4j.appender.file=org.apache.log4j.RollingFileAppender
+#log4j.appender.file.maxFileSize=100KB
+#log4j.appender.file.maxBackupIndex=9
+#log4j.appender.file.File=egovbus_ca.log
+#log4j.appender.file.threshold=info
+#log4j.appender.file.layout=org.apache.log4j.PatternLayout
+#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n \ No newline at end of file