From 667af128d0adfeee2aa4748ab58411c91bc4905f Mon Sep 17 00:00:00 2001 From: mcentner Date: Tue, 26 Jan 2010 16:27:04 +0000 Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/branches/mocca-1.2.11-sha2@600 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../AuthenticationClassifierTest.java | 28 - .../gv/egiz/bku/accesscontroller/ConfigTest.java | 104 --- .../egiz/bku/accesscontroller/RuleCheckerTest.java | 87 --- .../bku/binding/BindingProcessorManagerTest.java | 51 -- .../gv/egiz/bku/binding/DataUrlConnectionTest.java | 178 ----- .../at/gv/egiz/bku/binding/DummyStalFactory.java | 38 - .../bku/binding/EmptyMultipartSLRequestTest.java | 98 --- .../at/gv/egiz/bku/binding/ExpiryRemoverTest.java | 70 -- .../egiz/bku/binding/HttpBindingProcessorTest.java | 328 -------- .../java/at/gv/egiz/bku/binding/IdFactoryTest.java | 63 -- .../egiz/bku/binding/InputDecoderFactoryTest.java | 96 --- .../bku/binding/MultiTestDataUrlConnection.java | 49 -- .../egiz/bku/binding/MultipartSLRequestTest.java | 59 -- .../at/gv/egiz/bku/binding/NullOperationTest.java | 54 -- .../at/gv/egiz/bku/binding/RequestFactory.java | 116 --- .../egiz/bku/binding/SSLDataUrlConnectionTest.java | 40 - .../gv/egiz/bku/binding/TestDataUrlConnection.java | 150 ---- .../bku/binding/XWWWFormUrlInputIteratorTest.java | 299 -------- .../at/gv/egiz/bku/conf/CertValidatorTest.java | 35 - .../at/gv/egiz/bku/conf/DummyConfiguration.java | 32 - .../egiz/bku/slcommands/SLCommandFactoryTest.java | 90 --- .../impl/CreateXMLSignatureComandImplTest.java | 103 --- .../bku/slcommands/impl/ErrorResultImplTest.java | 46 -- .../slcommands/impl/InfoboxReadComandImplTest.java | 104 --- .../impl/NullOperationResultImplTest.java | 42 - .../impl/SVPersonendatenInfoboxImplTest.java | 146 ---- .../bku/slcommands/impl/xsect/SignatureTest.java | 853 --------------------- .../test/java/at/gv/egiz/stal/dummy/DummySTAL.java | 154 ---- 28 files changed, 3513 deletions(-) delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/AuthenticationClassifierTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/ConfigTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/RuleCheckerTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/BindingProcessorManagerTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DataUrlConnectionTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/EmptyMultipartSLRequestTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/ExpiryRemoverTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/HttpBindingProcessorTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/IdFactoryTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/InputDecoderFactoryTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultiTestDataUrlConnection.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultipartSLRequestTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/NullOperationTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/RequestFactory.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/SSLDataUrlConnectionTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/TestDataUrlConnection.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/XWWWFormUrlInputIteratorTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/CertValidatorTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/DummyConfiguration.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/SLCommandFactoryTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateXMLSignatureComandImplTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/ErrorResultImplTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadComandImplTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/NullOperationResultImplTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/SVPersonendatenInfoboxImplTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java delete mode 100644 mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java (limited to 'mocca-1.2.11/bkucommon/src/test/java/at/gv') diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/AuthenticationClassifierTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/AuthenticationClassifierTest.java deleted file mode 100644 index c339704e..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/AuthenticationClassifierTest.java +++ /dev/null @@ -1,28 +0,0 @@ -package at.gv.egiz.bku.accesscontroller; - -import static org.junit.Assert.assertTrue; - -import java.security.cert.CertificateFactory; -import java.security.cert.X509Certificate; - -import org.junit.Before; -import org.junit.Test; - -public class AuthenticationClassifierTest { - - private X509Certificate atrust; - - @Before - public void setUp() throws Exception { - atrust = (X509Certificate) CertificateFactory.getInstance("X509") - .generateCertificate( - getClass().getClassLoader().getResourceAsStream( - "at/gv/egiz/bku/accesscontroller/www.a-trust.at.crt")); - } - - @Test - public void testATrust() { - assertTrue(AuthenticationClassifier.isGovAgency(atrust)); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/ConfigTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/ConfigTest.java deleted file mode 100644 index bce3cdd9..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/ConfigTest.java +++ /dev/null @@ -1,104 +0,0 @@ -package at.gv.egiz.bku.accesscontroller; - -import javax.xml.bind.JAXBException; - -import org.junit.Test; - -import at.gv.egiz.bku.slcommands.InfoboxReadCommand; -import at.gv.egiz.bku.slcommands.SLCommandContext; -import at.gv.egiz.bku.slcommands.SLResult; -import at.gv.egiz.bku.slcommands.impl.InfoboxReadCommandImpl; -import at.gv.egiz.bku.slexceptions.SLCommandException; -import at.gv.egiz.bku.slexceptions.SLException; -import static org.junit.Assert.*; - -public class ConfigTest { - - public final static String RESOURCE1 = "at/gv/egiz/bku/accesscontroller/AccessControlConfig.xml"; - public final static String RESOURCE2 = "at/gv/egiz/bku/accesscontroller/SimpleChainTest.xml"; - - static class MyInfoBox implements InfoboxReadCommand { - private String domainId; - private String boxId; - private String name; - - public MyInfoBox(String identifier, String domainId) { - this.boxId = identifier; - this.domainId = domainId; - } - - @Override - public String getIdentityLinkDomainId() { - return domainId; - } - - @Override - public String getInfoboxIdentifier() { - return boxId; - } - - @Override - public SLResult execute() { - return null; - } - - public void setName(String name) { - this.name = name; - } - - @Override - public String getName() { - return "InfoboxReadRequest"; - } - - @Override - public void init(SLCommandContext ctx, Object unmarshalledRequest) - throws SLCommandException { - } - } - - @Test - public void testUnmarshall() throws JAXBException { - AccessControllerFactory.getInstance().init( - getClass().getClassLoader().getResourceAsStream(RESOURCE1)); - } - - @Test - public void testBasicFunction() throws JAXBException, SLException { - AccessControllerFactory.getInstance().init( - getClass().getClassLoader().getResourceAsStream(RESOURCE2)); - ChainChecker cc = AccessControllerFactory.getInstance().getChainChecker( - "InputFilter"); - assertNotNull(cc); - - AccessCheckerContext ctx = new AccessCheckerContext(null, - AuthenticationClass.ANONYMOUS, null); - ChainResult cr = cc.check(ctx); - assertFalse(cr.matchFound()); - - ctx = new AccessCheckerContext(new MyInfoBox("IdentityLink", "hansi"), - AuthenticationClass.CERTIFIED, null); - cr = cc.check(ctx); - assertTrue(cr.matchFound()); - - ctx = new AccessCheckerContext(new MyInfoBox("Something", "hansi"), - AuthenticationClass.CERTIFIED, null); - cr = cc.check(ctx); - assertFalse(cr.matchFound()); - - MyInfoBox mib = new MyInfoBox("IdentityLink", "seppl"); - mib.setName("ReadInfoboxSchickSchnack"); - ctx = new AccessCheckerContext(mib, AuthenticationClass.CERTIFIED, null); - cr = cc.check(ctx); - assertTrue(cr.matchFound()); - assertTrue(cr.getAction()==Action.ALLOW); - - mib = new MyInfoBox("IdentityLink", null); - mib.setName("ReadInfoboxSchickSchnack"); - ctx = new AccessCheckerContext(mib, AuthenticationClass.CERTIFIED, null); - cr = cc.check(ctx); - assertTrue(cr.matchFound()); - assertTrue(cr.getAction()==Action.DENY); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/RuleCheckerTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/RuleCheckerTest.java deleted file mode 100644 index 88f1490c..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/accesscontroller/RuleCheckerTest.java +++ /dev/null @@ -1,87 +0,0 @@ -package at.gv.egiz.bku.accesscontroller; - -import org.junit.Before; -import org.junit.Test; - -import at.gv.egiz.bku.accesscontroller.RuleChecker.PEER_TYPE; -import at.gv.egiz.bku.slcommands.impl.InfoboxReadCommandImpl; -import at.gv.egiz.bku.slcommands.impl.NullOperationCommandImpl; -import static org.junit.Assert.*; - -public class RuleCheckerTest { - - protected RuleChecker onlyAuthChecker; - protected RuleChecker onlyCmdChecker; - protected RuleChecker onlyPeerChecker; - - @Before - public void setUp() { - onlyAuthChecker = new RuleChecker("OnlyAuthChecker"); - onlyAuthChecker.setAction("allow"); - onlyAuthChecker.setUserAction("none"); - onlyAuthChecker.setAuthenticationClass("pseudoanonymous"); - onlyCmdChecker = new RuleChecker("OnlyCmdChecker"); - onlyCmdChecker.setAction("allow"); - onlyCmdChecker.setCommandName("InfoboxReadRequest"); - onlyPeerChecker = new RuleChecker("OnlyPeerChecker"); - onlyPeerChecker.setAction("allow"); - onlyPeerChecker.setPeerId("https://129.27.142..*", PEER_TYPE.URL); - } - - @Test - public void testAuthClass() { - AccessCheckerContext ctx = new AccessCheckerContext(null, - AuthenticationClass.ANONYMOUS, null); - RuleResult rr = onlyAuthChecker.check(ctx); - assertFalse(rr.matchFound()); - ctx = new AccessCheckerContext(null, AuthenticationClass.PSEUDO_ANONYMOUS, - null); - rr = onlyAuthChecker.check(ctx); - assertTrue(rr.matchFound()); - ctx = new AccessCheckerContext(null, AuthenticationClass.CERTIFIED, null); - rr = onlyAuthChecker.check(ctx); - assertTrue(rr.matchFound()); - } - - @Test - public void testCmd() { - AccessCheckerContext ctx = new AccessCheckerContext( - new InfoboxReadCommandImpl(), null, null); - RuleResult rr = onlyCmdChecker.check(ctx); - assertTrue(rr.matchFound()); - onlyCmdChecker.setCommandName("Info.*"); - rr = onlyCmdChecker.check(ctx); - assertTrue(rr.matchFound()); - ctx = new AccessCheckerContext(new NullOperationCommandImpl(), null, null); - rr = onlyCmdChecker.check(ctx); - assertFalse(rr.matchFound()); - onlyCmdChecker.setCommandName(".*"); - rr = onlyCmdChecker.check(ctx); - assertTrue(rr.matchFound()); - } - - @Test - public void testPeerId() { - AccessCheckerContext ctx = new AccessCheckerContext(null, null, - "https://129.27.142.20:80/index.html"); - RuleResult rr = onlyPeerChecker.check(ctx); - assertTrue(rr.matchFound()); - - ctx = new AccessCheckerContext(null, null, - "https://129.27.14.20:80/index.html"); - rr = onlyPeerChecker.check(ctx); - assertFalse(rr.matchFound()); - - onlyPeerChecker.setPeerId(".*.iaik..*", PEER_TYPE.HOST); - ctx = new AccessCheckerContext(null, null, - "https://129.27.142.20:80/index.html"); - rr = onlyPeerChecker.check(ctx); - assertTrue(rr.matchFound()); - - onlyPeerChecker.setPeerId("129.27.142..*", PEER_TYPE.IP); - ctx = new AccessCheckerContext(null, null, "https://www.iaik.tugraz.at:80/"); - rr = onlyPeerChecker.check(ctx); - assertTrue(rr.matchFound()); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/BindingProcessorManagerTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/BindingProcessorManagerTest.java deleted file mode 100644 index 22a7aa3b..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/BindingProcessorManagerTest.java +++ /dev/null @@ -1,51 +0,0 @@ -/* -* 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.binding; - -import at.gv.egiz.bku.conf.Configuration; -import at.gv.egiz.bku.conf.DummyConfiguration; -import static org.junit.Assert.*; - -import java.net.MalformedURLException; - -import org.junit.Before; -import org.junit.Test; - -public class BindingProcessorManagerTest { - - @Before - public void setUp() { - IdFactory.getInstance().setNumberOfBits(24*10); - } - - - @Test(expected = MalformedURLException.class) - public void basicCreationTest() throws MalformedURLException { - //TODO for the moment empty config sufficient (currently only maxDataURLHops configured) - BindingProcessorManager manager = new BindingProcessorManagerImpl(new DummyStalFactory(), new SLCommandInvokerImpl(), new DummyConfiguration()); - BindingProcessor bp = manager.createBindingProcessor("http://www.at/", null); - assertNotNull(bp.getId().toString()); - assertEquals(40, bp.getId().toString().length()); - String hansi = "Hansi"; - bp = manager.createBindingProcessor("http://www.iaik.at",hansi); - assertEquals(hansi, bp.getId().toString()); - bp = manager.createBindingProcessor("HtTp://www.iaik.at", null); - assertNotNull(bp); - manager.createBindingProcessor("seppl", null); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DataUrlConnectionTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DataUrlConnectionTest.java deleted file mode 100644 index 6e48e6fa..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DataUrlConnectionTest.java +++ /dev/null @@ -1,178 +0,0 @@ -/* -* 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. -*/ -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ -package at.gv.egiz.bku.binding; - -import at.gv.egiz.bku.conf.Configuration; -import at.gv.egiz.bku.conf.DummyConfiguration; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.InetSocketAddress; -import java.net.URL; -import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.junit.AfterClass; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; - -import com.sun.net.httpserver.Headers; -import com.sun.net.httpserver.HttpExchange; -import com.sun.net.httpserver.HttpHandler; -import com.sun.net.httpserver.HttpServer; - -/** - * - * @author clemens - */ -public class DataUrlConnectionTest { - - public static final String REQUEST_RESOURCE = "at/gv/egiz/bku/binding/NOPMultipartDataUrl.txt"; - - private static final Log log = LogFactory.getLog(DataUrlConnectionTest.class); - - static HttpServer server; - static BindingProcessor bindingProcessor; - static BindingProcessorManager manager; - - protected InputStream requestStream; - - @BeforeClass - public static void setUpHTTPServer() throws IOException { - log.debug("setting up HTTPServer"); - InetSocketAddress addr = new InetSocketAddress("localhost", 8081); - server = HttpServer.create(addr, 0); - server.createContext("/", new DataUrlHandler()); - server.start(); - - log.debug("setting up HTTPBindingProcessor"); - manager = new BindingProcessorManagerImpl(new DummyStalFactory(), - new SLCommandInvokerImpl(), new DummyConfiguration()); - bindingProcessor = (HTTPBindingProcessor) manager.createBindingProcessor( - "http://www.iaik.at", null); - Map headers = new HashMap(); - headers.put("Content-Type", InputDecoderFactory.MULTIPART_FORMDATA - + ";boundary=---------------------------2330864292941"); - ((HTTPBindingProcessor) bindingProcessor).setHTTPHeaders(headers); - } - - @Before - public void setUp() { - requestStream = getClass().getClassLoader().getResourceAsStream( - REQUEST_RESOURCE); - } - - @AfterClass - public static void stopServer() { - if (server != null) { - log.debug("stopping HTTPServer"); - server.stop(0); - } - } - - @Test - public void testBasicNop() { - bindingProcessor.consumeRequestStream(requestStream); - // manager.process(bindingProcessor); - bindingProcessor.run(); - } - -// @Test - public void openConnectionTest() throws Exception { - - URL dataUrl = new URL("http://localhost:8081/"); - - log.debug("creating DataUrlConnection " + dataUrl.toString()); - DataUrlConnectionImpl c = new DataUrlConnectionImpl(); - c.init(dataUrl); - - c.setHTTPHeader("httpHeader_1", "001"); - ByteArrayInputStream bais = new ByteArrayInputStream("Hello, world!" - .getBytes()); - c.setHTTPFormParameter("formParam_1", bais, "text/plain", "UTF-8", null); - - log.debug("open dataUrl connection"); - c.connect(); - //TODO mock SLResult and c.transmit(result); - } - - static class DataUrlHandler implements HttpHandler { - - public DataUrlHandler() { - log.debug("setting up DataUrlHandler"); - } - - @Override - public void handle(HttpExchange exchange) throws IOException { - log.debug("handling incoming request"); - logHTTPHeaders(exchange.getRequestHeaders()); - logRequest(exchange.getRequestBody()); - - log.debug("sending dummy response"); - exchange.getResponseHeaders().add("Content-type", "text/html"); - String response = "" + new Date() + " for " - + exchange.getRequestURI(); - exchange.sendResponseHeaders(200, response.length()); - - OutputStream os = exchange.getResponseBody(); - os.write(response.getBytes()); - os.close(); - } - - private void logRequest(InputStream in) throws IOException { - StringBuilder reqLogMsg = new StringBuilder("HTTP request: \n"); - int c = 0; - while ((c = in.read()) != -1) { - reqLogMsg.append((char) c); - } - log.debug(reqLogMsg.toString()); - in.close(); - } - - private void logHTTPHeaders(Headers headers) { - StringBuilder headersLogMsg = new StringBuilder("HTTP headers: \n"); - Set keys = headers.keySet(); - Iterator keysIt = keys.iterator(); - while (keysIt.hasNext()) { - String key = keysIt.next(); - List values = headers.get(key); - Iterator valuesIt = values.iterator(); - headersLogMsg.append(' '); - headersLogMsg.append(key); - headersLogMsg.append(": "); - while (valuesIt.hasNext()) { - headersLogMsg.append(valuesIt.next()); - headersLogMsg.append(' '); - } - headersLogMsg.append('\n'); - } - log.debug(headersLogMsg.toString()); - } - } -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java deleted file mode 100644 index f832f364..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java +++ /dev/null @@ -1,38 +0,0 @@ -/* -* 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.binding; - -import java.util.Locale; - -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.STALFactory; - -public class DummyStalFactory implements STALFactory { - - @Override - public STAL createSTAL() { - // TODO Auto-generated method stub - return new at.gv.egiz.stal.dummy.DummySTAL(); - } - - @Override - public void setLocale(Locale locale) { - // TODO Auto-generated method stub - - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/EmptyMultipartSLRequestTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/EmptyMultipartSLRequestTest.java deleted file mode 100644 index ee17f5e9..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/EmptyMultipartSLRequestTest.java +++ /dev/null @@ -1,98 +0,0 @@ -/* - * 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.binding; - -import at.gv.egiz.bku.conf.Configuration; -import iaik.security.ecc.provider.ECCProvider; -import iaik.security.provider.IAIK; -import iaik.xml.crypto.XSecProvider; - -import java.io.InputStream; -import java.net.MalformedURLException; -import java.security.Provider; -import java.security.Security; -import java.security.Provider.Service; -import java.util.HashMap; -import java.util.Map; -import java.util.Set; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.junit.Before; -import org.junit.Test; - -import at.gv.egiz.bku.conf.Configurator; -import at.gv.egiz.bku.conf.DummyConfiguration; -import at.gv.egiz.bku.slcommands.SLCommandFactory; -import at.gv.egiz.bku.slcommands.impl.xsect.STALProvider; - -public class EmptyMultipartSLRequestTest { - - private static Log log = LogFactory.getLog(EmptyMultipartSLRequestTest.class); - - protected String resourceName = "at/gv/egiz/bku/binding/MultipartEmpty.txt"; - - protected BindingProcessor bindingProcessor; - protected InputStream dataStream; - protected BindingProcessorManager manager; - - @Before - public void setUp() throws MalformedURLException, ClassNotFoundException { - manager = new BindingProcessorManagerImpl(new DummyStalFactory(), - new SLCommandInvokerImpl(), new DummyConfiguration()); - HTTPBindingProcessor http = (HTTPBindingProcessor) manager - .createBindingProcessor("http://www.at/", null); - Map headers = new HashMap(); - headers.put("Content-Type", InputDecoderFactory.MULTIPART_FORMDATA - + ";boundary=uW10q_I9UeqKyw-1o5EW4jtEAaGs7-mC6o"); - http.setHTTPHeaders(headers); - dataStream = getClass().getClassLoader().getResourceAsStream(resourceName); - bindingProcessor = http; - Map commandMap = new HashMap(); - commandMap - .put( - "http://www.buergerkarte.at/namespaces/securitylayer/1.2#:CreateXMLSignatureRequest", - "at.gv.egiz.bku.slcommands.impl.CreateXMLSignatureCommandImpl"); - commandMap - .put( - "http://www.buergerkarte.at/namespaces/securitylayer/1.2#:InfoboxReadRequest", - "at.gv.egiz.bku.slcommands.impl.InfoboxReadCommandImpl"); - SLCommandFactory.getInstance().setCommandImpl(commandMap); - Security.insertProviderAt(new IAIK(), 1); - Security.insertProviderAt(new ECCProvider(false), 2); - XSecProvider.addAsProvider(false); - // registering STALProvider as delegation provider for XSECT - STALProvider stalProvider = new STALProvider(); - Security.addProvider(stalProvider); - Set services = stalProvider.getServices(); - StringBuilder sb = new StringBuilder(); - for (Service service : services) { - String algorithm = service.getType() + "." + service.getAlgorithm(); - XSecProvider.setDelegationProvider(algorithm, stalProvider.getName()); - sb.append("\n" + algorithm); - } - log.debug(sb); - } - - @Test - public void testBasicNop() { - bindingProcessor.consumeRequestStream(dataStream); - // manager.process(bindingProcessor); - bindingProcessor.run(); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/ExpiryRemoverTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/ExpiryRemoverTest.java deleted file mode 100644 index faf08c54..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/ExpiryRemoverTest.java +++ /dev/null @@ -1,70 +0,0 @@ -/* -* 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.binding; - -import at.gv.egiz.bku.conf.Configuration; -import at.gv.egiz.bku.conf.DummyConfiguration; -import java.net.MalformedURLException; - -import org.junit.Test; -import static org.junit.Assert.*; - -public class ExpiryRemoverTest { - - @Test - public void testMe() throws InterruptedException, MalformedURLException { - //TODO for the moment empty config sufficient (currently only maxDataURLHops configured) - BindingProcessorManager manager = new BindingProcessorManagerImpl(new DummyStalFactory(), - new SLCommandInvokerImpl(), new DummyConfiguration()); - BindingProcessor bp = manager.createBindingProcessor("http://www.at", null); - ExpiryRemover remover = new ExpiryRemover(); - remover.setBindingProcessorManager(manager); - remover.execute(); - manager.process(bp); - remover.execute(); - assertTrue(manager.getManagedIds().size() == 1); - remover.setMaxAcceptedAge(1000); - Thread.sleep(100); - remover.execute(); - assertTrue(manager.getManagedIds().size() == 1); - Thread.sleep(910); - remover.execute(); - assertTrue(manager.getManagedIds().size() == 0); - } - - @Test - public void testMe2() throws InterruptedException, MalformedURLException { - BindingProcessorManager manager = new BindingProcessorManagerImpl(new DummyStalFactory(), - new SLCommandInvokerImpl(), new DummyConfiguration()); - BindingProcessor bp = manager.createBindingProcessor("http://www.iaik.at", null); - ExpiryRemover remover = new ExpiryRemover(); - remover.setBindingProcessorManager(manager); - remover.execute(); - manager.process(bp); - remover.execute(); - assertTrue(manager.getManagedIds().size() == 1); - remover.setMaxAcceptedAge(1000); - Thread.sleep(500); - remover.execute(); - assertTrue(manager.getManagedIds().size() == 1); - bp.updateLastAccessTime(); - Thread.sleep(510); - remover.execute(); - assertTrue(manager.getManagedIds().size() == 1); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/HttpBindingProcessorTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/HttpBindingProcessorTest.java deleted file mode 100644 index d03e1807..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/HttpBindingProcessorTest.java +++ /dev/null @@ -1,328 +0,0 @@ -/* -* 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.binding; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import at.gv.egiz.bku.binding.MultiTestDataUrlConnection.DataSourceProvider; -import at.gv.egiz.bku.conf.Configuration; -import at.gv.egiz.bku.conf.DummyConfiguration; -import at.gv.egiz.bku.utils.StreamUtil; - -public class HttpBindingProcessorTest { - - public static class TestDataSource implements DataSourceProvider { - - private List responseCodes = new ArrayList(); - private List content = new ArrayList(); - private List> responseHeaders = new ArrayList>(); - private int counter = -1; - - public void resetCounter() { - counter = -1; - } - - public void addResponse(int responseCode, String content, - Map headerMap) { - responseCodes.add(new Integer(responseCode)); - this.content.add(content); - this.responseHeaders.add(headerMap); - } - - @Override - public int getResponseCode() { - return responseCodes.get(counter); - } - - @Override - public String getResponseContent() { - return content.get(counter); - } - - @Override - public Map getResponseHeaders() { - return responseHeaders.get(counter); - } - - @Override - public void nextEvent() { - if (++counter >= responseCodes.size()) { - counter = 0; - } - } - } - - protected BindingProcessorManager manager; - protected HTTPBindingProcessor bindingProcessor; - protected Map serverHeaderMap; - protected Map clientHeaderMap; - protected TestDataUrlConnection server; - - protected static ApplicationContext appCtx; - - @BeforeClass - public static void setUpClass() { - appCtx = new ClassPathXmlApplicationContext("at/gv/egiz/bku/slcommands/testApplicationContext.xml"); - } - - - @Before - public void setUp() throws IOException { - server = new TestDataUrlConnection(); - DataUrl.setDataUrlConnectionImpl(server); - serverHeaderMap = new HashMap(); - serverHeaderMap.put("Content-Type", HttpUtil.TXT_XML); - server.setResponseCode(200); - server.setResponseContent(""); - server.setResponseHeaders(serverHeaderMap); - manager = new BindingProcessorManagerImpl(new DummyStalFactory(), - new SLCommandInvokerImpl(), new DummyConfiguration()); - bindingProcessor = (HTTPBindingProcessor) manager.createBindingProcessor( - "http://www.iaik.at", null); - clientHeaderMap = new HashMap(); - clientHeaderMap.put("Content-Type", - "application/x-www-form-urlencoded;charset=utf8"); - bindingProcessor.setHTTPHeaders(clientHeaderMap); - } - - protected String resultAsString(String encoding) throws IOException { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - bindingProcessor.writeResultTo(baos, encoding); - return new String(baos.toByteArray(), encoding); - } - - @Test - public void testWithoutDataUrlWithoutStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm("Haßnsi", "Wüurzel"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullOperationResponse") != -1); - assertEquals(200, bindingProcessor.getResponseCode()); - assertEquals(0, bindingProcessor.getResponseHeaders().size()); - } - - @Test - public void testWithoutDataUrlWithStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm("Hansi", "Wurzel"); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_HTML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullKommaJosef") != -1); - assertEquals(200, bindingProcessor.getResponseCode()); - assertEquals(0, bindingProcessor.getResponseHeaders().size()); - } - - @Test - public void testWithDataUrl301WithStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(301); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullOperationRequest") != -1); - assertEquals(301, bindingProcessor.getResponseCode()); - assertTrue(bindingProcessor.getResponseHeaders().size() > 0); - } - - @Test - public void testWithDataUrl302WithStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(302); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullOperationRequest") != -1); - assertEquals(302, bindingProcessor.getResponseCode()); - assertTrue(bindingProcessor.getResponseHeaders().size() > 0); - } - - @Test - public void testWithDataUrl303WithStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(303); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullOperationRequest") != -1); - assertEquals(303, bindingProcessor.getResponseCode()); - assertTrue(bindingProcessor.getResponseHeaders().size() > 0); - } - - @Test - public void testWithDataUrl306WithStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(306); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("ErrorResponse") != -1); - assertEquals(200, bindingProcessor.getResponseCode()); - assertTrue(bindingProcessor.getResponseHeaders().size() == 0); - } - - @Test - public void testWithDataUrl307NonXML() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(307); - serverHeaderMap.put("Content-Type", HttpUtil.TXT_PLAIN); - server.setResponseHeaders(serverHeaderMap); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_PLAIN, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullOperationRequest") != -1); - assertEquals(307, bindingProcessor.getResponseCode()); - assertTrue(bindingProcessor.getResponseHeaders().size() > 0); - } - - @Test - public void testWithInvalidDataUrl307XML() throws IOException { - RequestFactory rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(307); - serverHeaderMap.put("Content-Type", HttpUtil.TXT_XML); - serverHeaderMap.put("Location", "noUrl"); - server.setResponseHeaders(serverHeaderMap); - rf = new RequestFactory(); - server.setResponseContent(rf.getNullOperationXML()); - bindingProcessor.run(); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("ErrorResponse") != -1); - assertEquals(200, bindingProcessor.getResponseCode()); - assertTrue(bindingProcessor.getResponseHeaders().size() == 0); - } - - @Test - public void testWithValidDataUrl307XML() throws IOException, InterruptedException { - server = new MultiTestDataUrlConnection(); - DataUrl.setDataUrlConnectionImpl(server); - TestDataSource tds = new TestDataSource(); - ((MultiTestDataUrlConnection)server).setDataSource(tds); - - // first server response with 307 xml and location - RequestFactory rf = new RequestFactory(); - serverHeaderMap = new HashMap(); - serverHeaderMap.put("Location", "http://localhost:8080"); - serverHeaderMap.put("Content-Type", HttpUtil.TXT_XML); - tds.addResponse(307, rf.getNullOperationXML(), serverHeaderMap); - - // 2nd response with 200 text/plain and != - String testString = "CheckMe"; - serverHeaderMap = new HashMap(); - serverHeaderMap.put("Content-Type", HttpUtil.TXT_PLAIN); - String testHeader ="DummyHeader"; - String testHeaderVal ="DummyHeaderVal"; - serverHeaderMap.put(testHeader, testHeaderVal); - tds.addResponse(200, testString, serverHeaderMap); - - rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - bindingProcessor.run(); - - assertTrue(bindingProcessor.getResponseHeaders().size()>0); - assertEquals(testHeaderVal, bindingProcessor.getResponseHeaders().get(testHeader)); - assertEquals(200,bindingProcessor.getResponseCode()); - assertEquals(HttpUtil.TXT_PLAIN, bindingProcessor.getResultContentType()); - assertEquals(testString ,resultAsString("UTF-8")); - } - - @Test - public void testWithValidDataUrl200Urlencoded() throws IOException { - RequestFactory rf = new RequestFactory(); - rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(200); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - serverHeaderMap.put("Content-Type", HttpUtil.APPLICATION_URL_ENCODED); - server.setResponseHeaders(serverHeaderMap); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertTrue(bindingProcessor.getResponseHeaders().size()==0); - assertEquals(200,bindingProcessor.getResponseCode()); - assertEquals(HttpUtil.TXT_XML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullOperationResponse") != -1); - } - - @Test - public void testWithValidDataUrl200UrlencodedAndStylesheet() throws IOException { - RequestFactory rf = new RequestFactory(); - rf = new RequestFactory(); - rf.addForm(RequestFactory.DATAURL, "http://localhost:8080"); - bindingProcessor.consumeRequestStream(rf.getURLencoded()); - server.setResponseCode(200); - rf = new RequestFactory(); - rf.addFormAsResource("Styleshit", "at/gv/egiz/bku/binding/stylesheet.xslt"); - rf.addForm(RequestFactory.STYLESHEETURL, "formdata:Styleshit"); - serverHeaderMap.put("Content-Type", HttpUtil.APPLICATION_URL_ENCODED); - server.setResponseHeaders(serverHeaderMap); - server.setResponseContent(rf.getURLencodedAsString()); - bindingProcessor.run(); - assertTrue(bindingProcessor.getResponseHeaders().size()==0); - assertEquals(200,bindingProcessor.getResponseCode()); - assertEquals(HttpUtil.TXT_HTML, bindingProcessor.getResultContentType()); - assertTrue(resultAsString("UTF-8").indexOf("NullKommaJosef") != -1); - } - - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/IdFactoryTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/IdFactoryTest.java deleted file mode 100644 index cd75ec38..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/IdFactoryTest.java +++ /dev/null @@ -1,63 +0,0 @@ -/* -* 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.binding; - -import static org.junit.Assert.*; - -import org.junit.Before; -import org.junit.Test; - -public class IdFactoryTest { - - @Before - public void setUp() { - IdFactory.getInstance().setNumberOfBits(168); - - } - - @Test - public void testWithString() { - String testString = "Hansi"; - Id hansi = IdFactory.getInstance().createId(testString); - assertEquals(hansi.toString(), testString); - } - - @Test(expected = NullPointerException.class) - public void testFactory() { - IdFactory.getInstance().setSecureRandom(null); - } - - @Test - public void testRandom() { - IdFactory fab = IdFactory.getInstance(); - Id id = fab.createId(); - assertEquals(id.toString().length(), 28); - fab.setNumberOfBits(24); - id = fab.createId(); - assertEquals(id.toString().length(), 4); - } - - @Test - public void testEquals() { - String idString = "Hansi"; - IdFactory fab = IdFactory.getInstance(); - Id id1 = fab.createId(idString); - Id id2 = fab.createId(idString); - assertEquals(id1, id2); - assertEquals(id1.hashCode(), id2.hashCode()); - } -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/InputDecoderFactoryTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/InputDecoderFactoryTest.java deleted file mode 100644 index 7d79889d..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/InputDecoderFactoryTest.java +++ /dev/null @@ -1,96 +0,0 @@ -/* -* 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.binding; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.Iterator; - -import org.junit.Before; -import org.junit.Test; - -import at.gv.egiz.bku.utils.StreamUtil; - -public class InputDecoderFactoryTest { - - protected String resourceName = "at/gv/egiz/bku/binding/Multipart.txt.bin"; - protected byte[] data; - - @Before - public void setUp() throws IOException { - InputStream is = getClass().getClassLoader().getResourceAsStream( - resourceName); - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - byte[] buffer = new byte[1024]; - int i; - - while ((i = is.read(buffer)) != -1) { - bos.write(buffer, 0, i); - } - is.close(); - data = bos.toByteArray(); - } - - @Test - public void testPrefix() { - InputDecoder dec = InputDecoderFactory.getDecoder( - "multipart/form-data; boundary=AaB03x", null); - assertTrue(dec instanceof MultiPartFormDataInputDecoder); - } - - @Test - public void testMultipart() throws IOException { - InputDecoder dec = InputDecoderFactory - .getDecoder( - "multipart/form-data; boundary=---------------------------15671293698853", - new ByteArrayInputStream(data)); - assertNotNull(dec); - for (Iterator fpi = dec.getFormParameterIterator(); fpi - .hasNext();) { - FormParameter fp = fpi.next(); - if (fp.getFormParameterName().equals("XMLRequest")) { - assertEquals("text/xml", fp.getFormParameterContentType()); - return; - } - } - assertTrue(false); - } - - @Test - public void testUrlEncoded() throws IOException { - InputDecoder dec = InputDecoderFactory.getDecoder( - "application/x-www-form-urlencoded", null); - assertTrue(dec instanceof XWWWFormUrlInputDecoder); - dec = InputDecoderFactory.getDecoder( - "application/x-WWW-form-urlencoded;charset=UTF-8", - new ByteArrayInputStream( - "your_name=hansi+wurzel&userid=123&form_name=wasinet".getBytes())); - assertTrue(dec instanceof XWWWFormUrlInputDecoder); - Iterator fpi = dec.getFormParameterIterator(); - FormParameter fp = fpi.next(); - ByteArrayOutputStream os = new ByteArrayOutputStream(); - StreamUtil.copyStream(fp.getFormParameterValue(), os); - String value = new String(os.toByteArray(), "UTF-8"); - assertEquals("hansi wurzel", value); - } -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultiTestDataUrlConnection.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultiTestDataUrlConnection.java deleted file mode 100644 index 5d2a7544..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultiTestDataUrlConnection.java +++ /dev/null @@ -1,49 +0,0 @@ -/* -* 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.binding; - -import java.io.IOException; -import java.util.Map; - -public class MultiTestDataUrlConnection extends TestDataUrlConnection { - - public static interface DataSourceProvider { - public Map getResponseHeaders(); - public String getResponseContent(); - public int getResponseCode(); - public void nextEvent(); - } - - - protected DataSourceProvider dataSource; - - public void setDataSource(DataSourceProvider dataSource) { - this.dataSource = dataSource; - } - - public DataUrlResponse getResponse() throws IOException { - if (dataSource == null) { - return super.getResponse(); - } - dataSource.nextEvent(); - responseHeaders = dataSource.getResponseHeaders(); - responseCode = dataSource.getResponseCode(); - responseContent = dataSource.getResponseContent(); - return super.getResponse(); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultipartSLRequestTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultipartSLRequestTest.java deleted file mode 100644 index 1a9a6a70..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/MultipartSLRequestTest.java +++ /dev/null @@ -1,59 +0,0 @@ -/* -* 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.binding; - -import at.gv.egiz.bku.conf.DummyConfiguration; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.util.HashMap; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; - -import org.junit.Before; -import org.junit.Test; - -public class MultipartSLRequestTest { - - protected String resourceName = "at/gv/egiz/bku/binding/MultipartFromTutorial.txt"; - - protected BindingProcessor bindingProcessor; - protected InputStream dataStream; - protected BindingProcessorManager manager; - - @Before - public void setUp() throws MalformedURLException { - manager = new BindingProcessorManagerImpl(new DummyStalFactory(), - new SLCommandInvokerImpl(), new DummyConfiguration()); - HTTPBindingProcessor http = (HTTPBindingProcessor) manager - .createBindingProcessor("http://www.at/", null); - Map headers = new HashMap(); - headers.put("Content-Type", InputDecoderFactory.MULTIPART_FORMDATA - + ";boundary=---------------------------2330864292941"); - http.setHTTPHeaders(headers); - dataStream = getClass().getClassLoader().getResourceAsStream(resourceName); - bindingProcessor = http; - } - - @Test - public void testBasicNop() { - bindingProcessor.consumeRequestStream(dataStream); - // manager.process(bindingProcessor); - bindingProcessor.run(); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/NullOperationTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/NullOperationTest.java deleted file mode 100644 index 58c82c49..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/NullOperationTest.java +++ /dev/null @@ -1,54 +0,0 @@ -/* -* 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.binding; - -import at.gv.egiz.bku.conf.DummyConfiguration; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.util.HashMap; -import java.util.Map; - -import org.junit.Before; -import org.junit.Test; - -public class NullOperationTest { - - protected String resourceName = "at/gv/egiz/bku/binding/NulloperationRequest.txt.bin"; - - protected BindingProcessor bindingProcessor; - protected InputStream dataStream; - protected BindingProcessorManager manager; - - @Before - public void setUp() throws MalformedURLException { - manager = new BindingProcessorManagerImpl(new DummyStalFactory(), new SLCommandInvokerImpl(), new DummyConfiguration()); - HTTPBindingProcessor http = (HTTPBindingProcessor) manager.createBindingProcessor("http://www.at/", null); - Map headers = new HashMap(); - headers.put("Content-Type", "application/x-www-form-urlencoded"); - http.setHTTPHeaders(headers); - dataStream = getClass().getClassLoader().getResourceAsStream(resourceName); - bindingProcessor = http; - } - - @Test - public void testBasicNop() { - bindingProcessor.consumeRequestStream(dataStream); - //manager.process(bindingProcessor); - bindingProcessor.run(); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/RequestFactory.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/RequestFactory.java deleted file mode 100644 index 77157a41..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/RequestFactory.java +++ /dev/null @@ -1,116 +0,0 @@ -/* -* 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.binding; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.URLEncoder; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -import at.gv.egiz.bku.utils.StreamUtil; - -public class RequestFactory implements FixedFormParameters { - - protected String requestResourceName = "at/gv/egiz/bku/binding/Nulloperation.xml"; - - protected Map formString = new HashMap(); - protected Map formResources = new HashMap(); - - public RequestFactory() { - formResources.put(XMLREQUEST, requestResourceName); - } - - public void addForm(String formName, String content) { - formString.put(formName, content); - } - - public void addFormAsResource(String formName, String resourceName) { - formResources.put(formName, resourceName); - } - - public InputStream getURLencoded() throws IOException { - StringBuffer sb = new StringBuffer(); - for (Iterator si = formString.keySet().iterator(); si.hasNext();) { - String formName = si.next(); - String formVal = formString.get(formName); - sb.append(URLEncoder.encode(formName, "UTF-8")); - sb.append("="); - sb.append(URLEncoder.encode(formVal, "UTF-8")); - if (si.hasNext()) { - sb.append("&"); - } else { - if (formResources.keySet().iterator().hasNext()) { - sb.append("&"); - } - } - } - - for (Iterator si = formResources.keySet().iterator(); si.hasNext();) { - String formName = si.next(); - String formVal = URLEncoder.encode(StreamUtil.asString(getClass() - .getClassLoader().getResourceAsStream(formResources.get(formName)), - "UTF-8"), "UTF-8"); - sb.append(URLEncoder.encode(formName, "UTF-8")); - sb.append("="); - sb.append(formVal); - if (si.hasNext()) { - sb.append("&"); - } - } - return new ByteArrayInputStream(sb.toString().getBytes("UTF-8")); - } - - public String getURLencodedAsString() throws IOException { - StringBuffer sb = new StringBuffer(); - for (Iterator si = formString.keySet().iterator(); si.hasNext();) { - String formName = si.next(); - String formVal = formString.get(formName); - sb.append(URLEncoder.encode(formName, "UTF-8")); - sb.append("="); - sb.append(URLEncoder.encode(formVal, "UTF-8")); - if (si.hasNext()) { - sb.append("&"); - } else { - if (formResources.keySet().iterator().hasNext()) { - sb.append("&"); - } - } - } - - for (Iterator si = formResources.keySet().iterator(); si.hasNext();) { - String formName = si.next(); - String formVal = URLEncoder.encode(StreamUtil.asString(getClass() - .getClassLoader().getResourceAsStream(formResources.get(formName)), - "UTF-8"), "UTF-8"); - sb.append(URLEncoder.encode(formName, "UTF-8")); - sb.append("="); - sb.append(formVal); - if (si.hasNext()) { - sb.append("&"); - } - } - return sb.toString(); - } - - public String getNullOperationXML() throws IOException { - return StreamUtil.asString(getClass().getClassLoader().getResourceAsStream( - requestResourceName), "UTF-8"); - } -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/SSLDataUrlConnectionTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/SSLDataUrlConnectionTest.java deleted file mode 100644 index 79757244..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/SSLDataUrlConnectionTest.java +++ /dev/null @@ -1,40 +0,0 @@ -/* -* 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.binding; - -import static org.junit.Assert.assertNotNull; - -import java.io.IOException; -import java.net.URL; - -import org.junit.Ignore; -import org.junit.Test; - -@Ignore -public class SSLDataUrlConnectionTest { - - @Test - public void testVerisign() throws IOException { - URL url = new URL("https://www.verisign.com:443"); - DataUrlConnectionImpl uc = new DataUrlConnectionImpl(); - uc.init(url); - uc.connect(); - assertNotNull(uc.getServerCertificate()); - //uc.transmit(null); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/TestDataUrlConnection.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/TestDataUrlConnection.java deleted file mode 100644 index 0a24b5c5..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/TestDataUrlConnection.java +++ /dev/null @@ -1,150 +0,0 @@ -/* -* 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.binding; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.SocketTimeoutException; -import java.net.URL; -import java.security.cert.X509Certificate; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.SSLSocketFactory; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.junit.Ignore; - -import at.gv.egiz.bku.slcommands.SLResult; - -@Ignore -public class TestDataUrlConnection implements DataUrlConnectionSPI { - - - protected Log log = LogFactory.getLog(TestDataUrlConnection.class); - protected X509Certificate serverCertificate; - protected Map responseHeaders = Collections.EMPTY_MAP; - protected Map requestHeaders = new HashMap(); - protected String responseContent = ""; - protected int responseCode = 200; - - protected URL url; - - @Override - public void init(URL url) { - log.debug("Init Testdataurlconnection to url: " + url); - this.url = url; - } - - @Override - public void connect() throws SocketTimeoutException, IOException { - log.debug("Dummy connect to Testdataurlconnection to url: " + url); - - } - - @Override - public String getProtocol() { - return url.getProtocol(); - } - - @Override - public DataUrlResponse getResponse() throws IOException { - String ct = responseHeaders.get(HttpUtil.HTTP_HEADER_CONTENT_TYPE); - if (ct != null) { - ct = HttpUtil.getCharset(ct, true); - } else { - ct = HttpUtil.DEFAULT_CHARSET; - } - DataUrlResponse response = new DataUrlResponse(url.toString(), responseCode, new ByteArrayInputStream(responseContent.getBytes(ct))); - response.setResponseHttpHeaders(responseHeaders); - return response; - } - - @Override - public X509Certificate getServerCertificate() { - return serverCertificate; - } - - @Override - public void setHTTPFormParameter(String name, InputStream data, - String contentType, String charSet, String transferEncoding) { - // TODO Auto-generated method stub - } - - @Override - public void setHTTPHeader(String key, String value) { - requestHeaders.put(key, value); - } - - @Override - public void transmit(SLResult slResult) throws IOException { - log.debug("Dummy transmit to url: " + url); - } - - public void setServerCertificate(X509Certificate serverCertificate) { - this.serverCertificate = serverCertificate; - } - - public void setResponseHeaders(Map responseHeaders) { - this.responseHeaders = responseHeaders; - } - - public void setResponseContent(String responseContent) { - this.responseContent = responseContent; - } - - public void setResponseCode(int responseCode) { - this.responseCode = responseCode; - } - - public Map getRequestHeaders() { - return requestHeaders; - } - - @Override - public DataUrlConnectionSPI newInstance() { - return this; - } - - @Override - public URL getUrl() { - return url; - } - - @Override - public void setConfiguration(Properties config) { - // TODO Auto-generated method stub - - } - - @Override - public void setHostnameVerifier(HostnameVerifier hostnameVerifier) { - // TODO Auto-generated method stub - - } - - @Override - public void setSSLSocketFactory(SSLSocketFactory socketFactory) { - // TODO Auto-generated method stub - - } - } diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/XWWWFormUrlInputIteratorTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/XWWWFormUrlInputIteratorTest.java deleted file mode 100644 index 4d81f038..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/binding/XWWWFormUrlInputIteratorTest.java +++ /dev/null @@ -1,299 +0,0 @@ -package at.gv.egiz.bku.binding; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.io.UnsupportedEncodingException; -import java.net.URL; -import java.net.URLEncoder; -import java.nio.CharBuffer; -import java.nio.channels.FileChannel; -import java.nio.charset.Charset; - -import org.junit.Ignore; -import org.junit.Test; - -import at.gv.egiz.bku.utils.URLEncodingWriter; -import static org.junit.Assert.*; - -public class XWWWFormUrlInputIteratorTest { - - @Test - public void testEmpty() throws IOException { - - ByteArrayInputStream emptyStream = new ByteArrayInputStream(new byte[] {}); - - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(emptyStream); - - assertFalse(decoder.hasNext()); - - } - - @Test - public void testOneParam() throws IOException { - - final String name = "name"; - final String value = "value"; - - ByteArrayOutputStream os = new ByteArrayOutputStream(); - OutputStreamWriter w = new OutputStreamWriter(os, Charset.forName("UTF-8")); - w.write(name); - w.write("="); - w.write(value); - w.flush(); - w.close(); - - ByteArrayInputStream in = new ByteArrayInputStream(os.toByteArray()); - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(in); - - assertTrue(decoder.hasNext()); - FormParameter param = decoder.next(); - assertNotNull(param); - assertEquals(name, param.getFormParameterName()); - InputStream vis = param.getFormParameterValue(); - assertNotNull(vis); - InputStreamReader r = new InputStreamReader(vis); - char[] buf = new char[value.length() + 1]; - int len = r.read(buf); - assertEquals(value.length(), len); - assertEquals(value, new String(buf, 0, len)); - assertFalse(decoder.hasNext()); - Exception ex = null; - try { - decoder.next(); - } catch (Exception e) { - ex = e; - } - assertNotNull(ex); - - } - - @Test - public void testTwoParam() throws IOException { - - final String name1 = "name"; - final String value1 = "value"; - final String name2 = "Name_2"; - final String value2 = "Value 2"; - - ByteArrayOutputStream os = new ByteArrayOutputStream(); - OutputStreamWriter w = new OutputStreamWriter(os, Charset.forName("UTF-8")); - w.write(name1); - w.write("="); - w.write(value1); - w.write("&"); - w.write(URLEncoder.encode(name2, "UTF-8")); - w.write("="); - w.write(URLEncoder.encode(value2, "UTF-8")); - w.flush(); - w.close(); - - ByteArrayInputStream in = new ByteArrayInputStream(os.toByteArray()); - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(in); - - assertTrue(decoder.hasNext()); - FormParameter param = decoder.next(); - assertNotNull(param); - assertEquals(name1, param.getFormParameterName()); - InputStream vis = param.getFormParameterValue(); - assertNotNull(vis); - InputStreamReader r = new InputStreamReader(vis); - char[] buf = new char[value1.length() + 1]; - int len = r.read(buf); - assertEquals(value1.length(), len); - assertEquals(value1, new String(buf, 0, len)); - - assertTrue(decoder.hasNext()); - param = decoder.next(); - assertNotNull(param); - assertEquals(name2, param.getFormParameterName()); - vis = param.getFormParameterValue(); - assertNotNull(vis); - r = new InputStreamReader(vis); - buf = new char[value2.length() + 1]; - len = r.read(buf); - assertEquals(value2.length(), len); - assertEquals(value2, new String(buf, 0, len)); - - assertFalse(decoder.hasNext()); - } - - @Test - public void testURLEnc() throws IOException { - - String name = "name"; - byte[] value = new byte[128]; - for (int i = 0; i < value.length; i++) { - value[i] = (byte) i; - } - - String encValue = URLEncoder.encode(new String(value, "UTF-8"), "ASCII"); - System.out.println(encValue); - - ByteArrayOutputStream os = new ByteArrayOutputStream(); - OutputStreamWriter w = new OutputStreamWriter(os, Charset.forName("UTF-8")); - w.write(name); - w.write("="); - w.write(encValue); - w.flush(); - w.close(); - - ByteArrayInputStream in = new ByteArrayInputStream(os.toByteArray()); - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(in); - - assertTrue(decoder.hasNext()); - FormParameter param = decoder.next(); - assertNotNull(param); - assertEquals(name, param.getFormParameterName()); - InputStream vis = param.getFormParameterValue(); - assertNotNull(vis); - byte[] buf = new byte[value.length]; - int len = vis.read(buf); - assertArrayEquals(value, buf); - assertEquals(value.length, len); - assertFalse(decoder.hasNext()); - Exception ex = null; - try { - decoder.next(); - } catch (Exception e) { - ex = e; - } - assertNotNull(ex); - - } - - @Test - public void testURLEnc1() throws IOException { - - InputStream urlEncStream = new BufferedInputStream(getClass() - .getResourceAsStream("XWWWFormUrlEncoded1.txt")); - - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(urlEncStream); - - assertTrue(decoder.hasNext()); - FormParameter param = decoder.next(); - assertNotNull(param); - assertEquals("XMLRequest", param.getFormParameterName()); - InputStream vis = param.getFormParameterValue(); - assertNotNull(vis); - ByteArrayOutputStream os = new ByteArrayOutputStream(); - byte[] buf = new byte[1024]; - for (int l; (l = vis.read(buf)) != -1;) { - os.write(buf, 0, l); - } - assertEquals(-1, vis.read()); - assertFalse(decoder.hasNext()); - assertEquals(-1, urlEncStream.read()); - - } - - @Test - public void testURLEnc2() throws IOException { - - InputStream urlEncStream = new BufferedInputStream(getClass() - .getResourceAsStream("XWWWFormUrlEncoded2.txt")); - - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(urlEncStream); - - assertTrue(decoder.hasNext()); - FormParameter param = decoder.next(); - assertNotNull(param); - assertEquals("XMLRequest", param.getFormParameterName()); - InputStream vis = param.getFormParameterValue(); - assertNotNull(vis); - ByteArrayOutputStream os = new ByteArrayOutputStream(); - byte[] buf = new byte[1024]; - for (int l; (l = vis.read(buf)) != -1;) { - os.write(buf, 0, l); - } - assertEquals(-1, vis.read()); - vis.close(); - - assertTrue(decoder.hasNext()); - param = decoder.next(); - assertNotNull(param); - assertEquals("EmptyParam", param.getFormParameterName()); - vis = param.getFormParameterValue(); - assertNotNull(vis); - assertEquals(-1, vis.read()); - vis.close(); - - assertTrue(decoder.hasNext()); - param = decoder.next(); - assertNotNull(param); - assertEquals("TransferParam__", param.getFormParameterName()); - vis = param.getFormParameterValue(); - assertNotNull(vis); - for (int l = 0; (l = vis.read(buf)) != -1;) { - os.write(buf, 0, l); - } - assertEquals(-1, vis.read()); - vis.close(); - - } - - @Ignore - @Test - public void testURLEncLoremIpsum() throws IOException { - - InputStream urlEncStream = new BufferedInputStream(getClass() - .getResourceAsStream("UrlEncodedLoremIpsum.txt")); - - XWWWFormUrlInputIterator decoder = new XWWWFormUrlInputIterator(urlEncStream); - - assertTrue(decoder.hasNext()); - FormParameter param = decoder.next(); - assertNotNull(param); - assertEquals("LoremIpsum", param.getFormParameterName()); - InputStream vis = param.getFormParameterValue(); - assertNotNull(vis); - ByteArrayOutputStream os = new ByteArrayOutputStream(); - byte[] buf = new byte[1024]; - for (int l; (l = vis.read(buf)) != -1;) { - os.write(buf, 0, l); - } - assertEquals(-1, vis.read()); - vis.close(); - - assertFalse(decoder.hasNext()); - - } - - - public static void main(String[] args) throws IOException { - - URL resource = XWWWFormUrlInputIteratorTest.class - .getResource("LoremIpsum.txt"); - - BufferedInputStream is = new BufferedInputStream(resource.openStream()); - - InputStreamReader reader = new InputStreamReader(is, "UTF-8"); - - StringBuilder sb = new StringBuilder(); - char[] b = new char[1024]; - for (int l; (l = reader.read(b)) != -1;) { - sb.append(b, 0, l); - } - String li = sb.toString(); - - FileOutputStream os = new FileOutputStream("UrlEncodedLoremIpsum.txt"); - OutputStreamWriter writer = new OutputStreamWriter(new BufferedOutputStream(os), "ISO-8859-1"); - URLEncodingWriter encoder = new URLEncodingWriter(writer); - - for (int i = 0; i < 100; i++) { - encoder.write(li); - } - - encoder.flush(); - encoder.close(); - - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/CertValidatorTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/CertValidatorTest.java deleted file mode 100644 index d97d741d..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/CertValidatorTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package at.gv.egiz.bku.conf; - -import iaik.x509.X509Certificate; - -import java.io.File; -import java.io.IOException; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; -import java.security.cert.CertificateException; - -import static org.junit.Assert.*; - -import org.junit.Before; -import org.junit.Test; - -public class CertValidatorTest { - - private CertValidator cv; - - @Before - public void setUp() throws URISyntaxException { - cv = new CertValidatorImpl(); - URL caDir = getClass().getClassLoader().getResource("at/gv/egiz/bku/conf/certs/CACerts"); - URL certDir = getClass().getClassLoader().getResource("at/gv/egiz/bku/conf/certs/certStore"); - cv.init(new File(caDir.toURI()), new File(certDir.toURI())); - } - - @Test - public void testValid() throws CertificateException, IOException { - X509Certificate cert = new X509Certificate(getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/conf/certs/testCerts/www.a-trust.at.der")); - assertTrue(cv.isCertificateValid("TID", new X509Certificate[]{cert})); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/DummyConfiguration.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/DummyConfiguration.java deleted file mode 100644 index 1e0e5aa9..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/conf/DummyConfiguration.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * 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.conf; - -/** - * - * @author Clemens Orthacker - */ -public class DummyConfiguration extends Configuration { - - public DummyConfiguration() { - this.setMaxDataUrlHops(MAX_DATAURL_HOPS_DEFAULT); - //this.set... - } - - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/SLCommandFactoryTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/SLCommandFactoryTest.java deleted file mode 100644 index 7a087b38..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/SLCommandFactoryTest.java +++ /dev/null @@ -1,90 +0,0 @@ -/* -* 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.slcommands; - -import static org.junit.Assert.assertTrue; - -import java.io.Reader; -import java.io.StringReader; - -import javax.xml.transform.Source; -import javax.xml.transform.stream.StreamSource; - -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import at.gv.egiz.bku.slexceptions.SLCommandException; -import at.gv.egiz.bku.slexceptions.SLRequestException; -import at.gv.egiz.bku.slexceptions.SLRuntimeException; -import at.gv.egiz.bku.slexceptions.SLVersionException; -import at.gv.egiz.stal.dummy.DummySTAL; - -public class SLCommandFactoryTest { - - protected static ApplicationContext appCtx; - SLCommandFactory factory; - SLCommandContext context; - - @BeforeClass - public static void setUpClass() { - appCtx = new ClassPathXmlApplicationContext("at/gv/egiz/bku/slcommands/testApplicationContext.xml"); - } - - @Before - public void setUp() { - factory = SLCommandFactory.getInstance(); - context = new SLCommandContext(); - context.setSTAL(new DummySTAL()); - } - - @Test - public void createNullOperationCommand() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - Reader requestReader = new StringReader( - ""); - Source source = new StreamSource(requestReader); - - SLCommand slCommand = factory.createSLCommand(source, context); - - assertTrue(slCommand instanceof NullOperationCommand); - } - - @Test(expected=SLCommandException.class) - public void createUnsupportedCommand() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - Reader requestReader = new StringReader( - ""); - Source source = new StreamSource(requestReader); - - factory.createSLCommand(source, context); - - } - - @Test(expected=SLRequestException.class) - public void createMalformedCommand() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - Reader requestReader = new StringReader( - "" + - "missplacedContent" + - ""); - Source source = new StreamSource(requestReader); - - factory.createSLCommand(source, context); - - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateXMLSignatureComandImplTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateXMLSignatureComandImplTest.java deleted file mode 100644 index 4e9b4cd7..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateXMLSignatureComandImplTest.java +++ /dev/null @@ -1,103 +0,0 @@ -/* -* 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.slcommands.impl; - -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; -import iaik.xml.crypto.XSecProvider; - -import java.io.InputStream; -import java.security.Security; - -import javax.xml.transform.stream.StreamResult; -import javax.xml.transform.stream.StreamSource; - -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import at.gv.egiz.bku.slcommands.CreateXMLSignatureCommand; -import at.gv.egiz.bku.slcommands.InfoboxReadCommand; -import at.gv.egiz.bku.slcommands.SLCommand; -import at.gv.egiz.bku.slcommands.SLCommandContext; -import at.gv.egiz.bku.slcommands.SLCommandFactory; -import at.gv.egiz.bku.slcommands.SLResult; -import at.gv.egiz.bku.slcommands.impl.xsect.STALProvider; -import at.gv.egiz.bku.slexceptions.SLCommandException; -import at.gv.egiz.bku.slexceptions.SLRequestException; -import at.gv.egiz.bku.slexceptions.SLRuntimeException; -import at.gv.egiz.bku.slexceptions.SLVersionException; -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.dummy.DummySTAL; -//@Ignore -public class CreateXMLSignatureComandImplTest { - - private SLCommandFactory factory; - - private STAL stal; - - @BeforeClass - public static void setUpClass() { - - new ClassPathXmlApplicationContext("at/gv/egiz/bku/slcommands/testApplicationContext.xml"); - - Security.addProvider(new STALProvider()); - XSecProvider.addAsProvider(true); - } - - @Before - public void setUp() { - factory = SLCommandFactory.getInstance(); - stal = new DummySTAL(); - } - - @Test - public void testCreateXMLSignatureRequest() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/createxmlsignaturerequest/CreateXMLSignatureRequest.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof CreateXMLSignatureCommand); - - SLResult result = command.execute(); - result.writeTo(new StreamResult(System.out), false); - } - -// @Test(expected=SLCommandException.class) - public void testInfboxReadRequestInvalid1() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.Invalid-1.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - } - -// @Test(expected=SLCommandException.class) - public void testInfboxReadRequestInvalid2() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.Invalid-2.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/ErrorResultImplTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/ErrorResultImplTest.java deleted file mode 100644 index aa2bcd62..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/ErrorResultImplTest.java +++ /dev/null @@ -1,46 +0,0 @@ -/* -* 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.slcommands.impl; - -import java.io.ByteArrayOutputStream; -import java.util.Locale; - -import javax.xml.transform.stream.StreamResult; - -import org.junit.Test; - -import at.gv.egiz.bku.slcommands.ErrorResult; -import at.gv.egiz.bku.slexceptions.SLException; - -public class ErrorResultImplTest { - - @Test - public void writeTo() { - - SLException slException = new SLException(0,"test.noerror", null); - ErrorResult errorResult = new ErrorResultImpl(slException, Locale.getDefault()); - - ByteArrayOutputStream stream = new ByteArrayOutputStream(); - StreamResult result = new StreamResult(stream); - errorResult.writeTo(result, false); - - System.out.println(stream.toString()); - - } - - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadComandImplTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadComandImplTest.java deleted file mode 100644 index bfc784f7..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadComandImplTest.java +++ /dev/null @@ -1,104 +0,0 @@ -/* -* 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.slcommands.impl; - -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.io.InputStream; - -import javax.xml.transform.stream.StreamResult; -import javax.xml.transform.stream.StreamSource; - -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import at.gv.egiz.bku.slcommands.ErrorResult; -import at.gv.egiz.bku.slcommands.InfoboxReadCommand; -import at.gv.egiz.bku.slcommands.SLCommand; -import at.gv.egiz.bku.slcommands.SLCommandContext; -import at.gv.egiz.bku.slcommands.SLCommandFactory; -import at.gv.egiz.bku.slcommands.SLResult; -import at.gv.egiz.bku.slexceptions.SLCommandException; -import at.gv.egiz.bku.slexceptions.SLRequestException; -import at.gv.egiz.bku.slexceptions.SLRuntimeException; -import at.gv.egiz.bku.slexceptions.SLVersionException; -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.dummy.DummySTAL; - -//@Ignore -public class InfoboxReadComandImplTest { - - private static ApplicationContext appCtx; - - private SLCommandFactory factory; - - private STAL stal; - - @BeforeClass - public static void setUpClass() { - appCtx = new ClassPathXmlApplicationContext("at/gv/egiz/bku/slcommands/testApplicationContext.xml"); - } - - @Before - public void setUp() { - factory = SLCommandFactory.getInstance(); - stal = new DummySTAL(); - } - - @Test - public void testInfboxReadRequest() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - - SLResult result = command.execute(); - result.writeTo(new StreamResult(System.out), false); - } - - @Test(expected=SLCommandException.class) - public void testInfboxReadRequestInvalid1() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.Invalid-1.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - } - - public void testInfboxReadRequestInvalid2() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.Invalid-2.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - - SLResult result = command.execute(); - assertTrue(result instanceof ErrorResult); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/NullOperationResultImplTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/NullOperationResultImplTest.java deleted file mode 100644 index e9b0775f..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/NullOperationResultImplTest.java +++ /dev/null @@ -1,42 +0,0 @@ -/* -* 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.slcommands.impl; - -import java.io.ByteArrayOutputStream; - -import javax.xml.transform.stream.StreamResult; - -import org.junit.Test; - -import at.gv.egiz.bku.slcommands.NullOperationResult; - -public class NullOperationResultImplTest { - - @Test - public void writeTo() { - - NullOperationResult nullOperationResult = new NullOperationResultImpl(); - - ByteArrayOutputStream stream = new ByteArrayOutputStream(); - StreamResult result = new StreamResult(stream); - nullOperationResult.writeTo(result, false); - - System.out.println(stream.toString()); - - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/SVPersonendatenInfoboxImplTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/SVPersonendatenInfoboxImplTest.java deleted file mode 100644 index a17f0797..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/SVPersonendatenInfoboxImplTest.java +++ /dev/null @@ -1,146 +0,0 @@ -/* -* 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.slcommands.impl; - -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; -import iaik.asn1.CodingException; - -import java.io.IOException; -import java.io.InputStream; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.JAXBException; -import javax.xml.bind.Marshaller; -import javax.xml.transform.stream.StreamResult; -import javax.xml.transform.stream.StreamSource; - -import org.junit.Ignore; -import org.junit.Test; -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import at.buergerkarte.namespaces.cardchannel.AttributeList; -import at.buergerkarte.namespaces.cardchannel.ObjectFactory; -import at.gv.egiz.bku.slcommands.ErrorResult; -import at.gv.egiz.bku.slcommands.InfoboxReadCommand; -import at.gv.egiz.bku.slcommands.SLCommand; -import at.gv.egiz.bku.slcommands.SLCommandContext; -import at.gv.egiz.bku.slcommands.SLCommandFactory; -import at.gv.egiz.bku.slcommands.SLMarshallerFactory; -import at.gv.egiz.bku.slcommands.SLResult; -import at.gv.egiz.bku.slexceptions.SLCommandException; -import at.gv.egiz.bku.slexceptions.SLRequestException; -import at.gv.egiz.bku.slexceptions.SLRuntimeException; -import at.gv.egiz.bku.slexceptions.SLVersionException; -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.dummy.DummySTAL; - -//@Ignore -public class SVPersonendatenInfoboxImplTest { - - private byte[] EHIC = new byte[] { - (byte) 0x30, (byte) 0x6b, (byte) 0x30, (byte) 0x12, (byte) 0x06, (byte) 0x08, (byte) 0x2a, (byte) 0x28, - (byte) 0x00, (byte) 0x0a, (byte) 0x01, (byte) 0x04, (byte) 0x01, (byte) 0x14, (byte) 0x31, (byte) 0x06, - (byte) 0x04, (byte) 0x04, (byte) 0x42, (byte) 0x47, (byte) 0x4b, (byte) 0x4b, (byte) 0x30, (byte) 0x12, - (byte) 0x06, (byte) 0x08, (byte) 0x2a, (byte) 0x28, (byte) 0x00, (byte) 0x0a, (byte) 0x01, (byte) 0x04, - (byte) 0x01, (byte) 0x15, (byte) 0x31, (byte) 0x06, (byte) 0x12, (byte) 0x04, (byte) 0x31, (byte) 0x33, - (byte) 0x30, (byte) 0x30, (byte) 0x30, (byte) 0x22, (byte) 0x06, (byte) 0x08, (byte) 0x2a, (byte) 0x28, - (byte) 0x00, (byte) 0x0a, (byte) 0x01, (byte) 0x04, (byte) 0x01, (byte) 0x16, (byte) 0x31, (byte) 0x16, - (byte) 0x12, (byte) 0x14, (byte) 0x38, (byte) 0x30, (byte) 0x30, (byte) 0x34, (byte) 0x30, (byte) 0x30, - (byte) 0x30, (byte) 0x30, (byte) 0x30, (byte) 0x30, (byte) 0x32, (byte) 0x33, (byte) 0x30, (byte) 0x30, - (byte) 0x34, (byte) 0x37, (byte) 0x30, (byte) 0x37, (byte) 0x35, (byte) 0x39, (byte) 0x30, (byte) 0x1d, - (byte) 0x06, (byte) 0x08, (byte) 0x2a, (byte) 0x28, (byte) 0x00, (byte) 0x0a, (byte) 0x01, (byte) 0x04, - (byte) 0x01, (byte) 0x17, (byte) 0x31, (byte) 0x11, (byte) 0x18, (byte) 0x0f, (byte) 0x32, (byte) 0x30, - (byte) 0x30, (byte) 0x35, (byte) 0x30, (byte) 0x37, (byte) 0x30, (byte) 0x31, (byte) 0x31, (byte) 0x32, - (byte) 0x30, (byte) 0x30, (byte) 0x30, (byte) 0x30, (byte) 0x5a - }; - - private static ApplicationContext appCtx; - - private SLCommandFactory factory; - - private STAL stal; - -// @BeforeClass - public static void setUpClass() { - appCtx = new ClassPathXmlApplicationContext("at/gv/egiz/bku/slcommands/testApplicationContext.xml"); - } - -// @Before - public void setUp() { - factory = SLCommandFactory.getInstance(); - stal = new DummySTAL(); - } - - @Test - public void testEHIC() throws SLCommandException, JAXBException, CodingException, IOException { - - AttributeList attributeList = SVPersonendatenInfoboxImpl.createAttributeList(EHIC); - - JAXBElement ehic = new ObjectFactory().createEHIC(attributeList); - - Marshaller marshaller = SLMarshallerFactory.getInstance().createMarshaller(false); - - marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); - - marshaller.marshal(ehic, System.out); - - } - - @Ignore - @Test - public void testInfboxReadRequest() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - - SLResult result = command.execute(); - result.writeTo(new StreamResult(System.out), false); - } - - @Ignore - @Test(expected=SLCommandException.class) - public void testInfboxReadRequestInvalid1() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.Invalid-1.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - } - - @Ignore - public void testInfboxReadRequestInvalid2() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { - InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/infoboxreadcommand/IdentityLink.Binary.Invalid-2.xml"); - assertNotNull(inputStream); - - SLCommandContext context = new SLCommandContext(); - context.setSTAL(stal); - SLCommand command = factory.createSLCommand(new StreamSource(inputStream), context); - assertTrue(command instanceof InfoboxReadCommand); - - SLResult result = command.execute(); - assertTrue(result instanceof ErrorResult); - } - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java deleted file mode 100644 index ccd29e85..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java +++ /dev/null @@ -1,853 +0,0 @@ -/* -* 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.slcommands.impl.xsect; - -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; - -import iaik.xml.crypto.XSecProvider; - -import java.io.IOException; -import java.io.InputStream; -import java.security.KeyStore; -import java.security.KeyStoreException; -import java.security.NoSuchAlgorithmException; -import java.security.PrivateKey; -import java.security.UnrecoverableKeyException; -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; -import java.util.List; - -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.SSLSocketFactory; -import javax.xml.bind.JAXBContext; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.JAXBException; -import javax.xml.bind.Unmarshaller; -import javax.xml.crypto.MarshalException; -import javax.xml.crypto.dsig.CanonicalizationMethod; -import javax.xml.crypto.dsig.DigestMethod; -import javax.xml.crypto.dsig.Reference; -import javax.xml.crypto.dsig.SignatureMethod; -import javax.xml.crypto.dsig.Transform; -import javax.xml.crypto.dsig.XMLObject; -import javax.xml.crypto.dsig.XMLSignatureException; -import javax.xml.crypto.dsig.XMLSignatureFactory; -import javax.xml.crypto.dsig.dom.DOMSignContext; -import javax.xml.crypto.dsig.spec.C14NMethodParameterSpec; -import javax.xml.crypto.dsig.spec.DigestMethodParameterSpec; -import javax.xml.crypto.dsig.spec.SignatureMethodParameterSpec; -import javax.xml.stream.XMLEventReader; -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLStreamException; - -import org.junit.BeforeClass; -import org.junit.Test; -import org.w3c.dom.Document; -import org.w3c.dom.Node; -import org.w3c.dom.ls.DOMImplementationLS; -import org.w3c.dom.ls.LSOutput; -import org.w3c.dom.ls.LSSerializer; - -import at.buergerkarte.namespaces.securitylayer._1.CreateXMLSignatureRequestType; -import at.buergerkarte.namespaces.securitylayer._1.DataObjectInfoType; -import at.buergerkarte.namespaces.securitylayer._1.ObjectFactory; -import at.buergerkarte.namespaces.securitylayer._1.SignatureInfoCreationType; -import at.gv.egiz.bku.slexceptions.SLCommandException; -import at.gv.egiz.bku.slexceptions.SLRequestException; -import at.gv.egiz.bku.slexceptions.SLViewerException; -import at.gv.egiz.bku.utils.urldereferencer.StreamData; -import at.gv.egiz.bku.utils.urldereferencer.URLDereferencer; -import at.gv.egiz.bku.utils.urldereferencer.URLDereferencerContext; -import at.gv.egiz.bku.utils.urldereferencer.URLProtocolHandler; -import at.gv.egiz.dom.DOMUtils; -import at.gv.egiz.slbinding.RedirectEventFilter; -import at.gv.egiz.slbinding.RedirectUnmarshallerListener; -import org.junit.Ignore; - -public class SignatureTest { - - private class AlgorithmMethodFactoryImpl implements AlgorithmMethodFactory { - - @Override - public CanonicalizationMethod createCanonicalizationMethod( - SignatureContext signatureContext) { - - XMLSignatureFactory signatureFactory = signatureContext.getSignatureFactory(); - - try { - return signatureFactory.newCanonicalizationMethod(CanonicalizationMethod.EXCLUSIVE, (C14NMethodParameterSpec) null); - } catch (Exception e) { - throw new RuntimeException(e); - } - } - - @Override - public DigestMethod createDigestMethod(SignatureContext signatureContext) { - - XMLSignatureFactory signatureFactory = signatureContext.getSignatureFactory(); - - try { - return signatureFactory.newDigestMethod(DigestMethod.SHA1, (DigestMethodParameterSpec) null); - } catch (Exception e) { - throw new RuntimeException(e); - } - } - - @Override - public SignatureMethod createSignatureMethod( - SignatureContext signatureContext) { - - XMLSignatureFactory signatureFactory = signatureContext.getSignatureFactory(); - - try { - return signatureFactory.newSignatureMethod(SignatureMethod.RSA_SHA1, (SignatureMethodParameterSpec) null); - } catch (Exception e) { - throw new RuntimeException(e); - } - - } - - } - - private static final String RESOURCE_PREFIX = "at/gv/egiz/bku/slcommands/impl/"; - - private static Unmarshaller unmarshaller; - - private static PrivateKey privateKey; - - private static X509Certificate certificate; - - @BeforeClass - public static void setUpClass() throws JAXBException, NoSuchAlgorithmException, KeyStoreException, CertificateException, IOException, UnrecoverableKeyException { - - XSecProvider.addAsProvider(true); - - String packageName = ObjectFactory.class.getPackage().getName(); - packageName += ":" - + org.w3._2000._09.xmldsig_.ObjectFactory.class.getPackage().getName(); - JAXBContext jaxbContext = JAXBContext.newInstance(packageName); - - unmarshaller = jaxbContext.createUnmarshaller(); - - initURLDereferencer(); - - ClassLoader classLoader = SignatureTest.class.getClassLoader(); - InputStream certStream = classLoader.getResourceAsStream(RESOURCE_PREFIX + "Cert.p12"); - assertNotNull("Certificate not found.", certStream); - - char[] passwd = "1622".toCharArray(); - - KeyStore keystore = KeyStore.getInstance("PKCS12"); - keystore.load(certStream, passwd); - String firstAlias = keystore.aliases().nextElement(); - certificate = (X509Certificate) keystore.getCertificate(firstAlias); - privateKey = (PrivateKey) keystore.getKey(firstAlias, passwd); - - } - - private static void initURLDereferencer() { - - URLDereferencer.getInstance().registerHandler("testlocal", new URLProtocolHandler() { - - @Override - public StreamData dereference(String url, URLDereferencerContext context) - throws IOException { - - ClassLoader classLoader = SignatureTest.class.getClassLoader(); - - String filename = url.split(":", 2)[1]; - - InputStream stream = classLoader.getResourceAsStream(RESOURCE_PREFIX + filename); - - if (stream == null) { - - throw new IOException("Failed to resolve resource '" + url + "'."); - - } else { - - String contentType; - if (filename.endsWith(".xml")) { - contentType = "text/xml"; - } else if (filename.endsWith(".txt")) { - contentType = "text/plain"; - } else { - contentType = ""; - } - - return new StreamData(url, contentType, stream); - - } - - } - - @Override - public void setHostnameVerifier(HostnameVerifier hostnameVerifier) { - // TODO Auto-generated method stub - - } - - @Override - public void setSSLSocketFactory(SSLSocketFactory socketFactory) { - // TODO Auto-generated method stub - - } - - }); - - } - - private Object unmarshal(String file) throws XMLStreamException, JAXBException { - - ClassLoader classLoader = SignatureTest.class.getClassLoader(); - InputStream resourceStream = classLoader.getResourceAsStream(RESOURCE_PREFIX + file); - assertNotNull(resourceStream); - - XMLInputFactory inputFactory = XMLInputFactory.newInstance(); - XMLEventReader eventReader = inputFactory.createXMLEventReader(resourceStream); - RedirectEventFilter redirectEventFilter = new RedirectEventFilter(); - XMLEventReader filteredReader = inputFactory.createFilteredReader(eventReader, redirectEventFilter); - - unmarshaller.setListener(new RedirectUnmarshallerListener(redirectEventFilter)); - - return unmarshaller.unmarshal(filteredReader); - - } - - // - // - // SignatureInfo - // - // - - @SuppressWarnings("unchecked") - private SignatureInfoCreationType unmarshalSignatureInfo(String file) throws JAXBException, XMLStreamException { - - Object object = unmarshal(file); - - Object requestType = ((JAXBElement) object).getValue(); - - assertTrue(requestType instanceof CreateXMLSignatureRequestType); - - SignatureInfoCreationType signatureInfo = ((CreateXMLSignatureRequestType) requestType).getSignatureInfo(); - - assertNotNull(signatureInfo); - - return signatureInfo; - - } - - @Test - public void testSetSignatureInfo_Base64_1() throws JAXBException, SLCommandException, XMLStreamException { - - SignatureInfoCreationType signatureInfo = unmarshalSignatureInfo("SignatureInfo_Base64_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), null); - - signature.setSignatureInfo(signatureInfo); - - Node parent = signature.getParent(); - Node nextSibling = signature.getNextSibling(); - - assertNotNull(parent); - assertTrue("urn:document".equals(parent.getNamespaceURI())); - assertTrue("XMLDocument".equals(parent.getLocalName())); - - assertNotNull(nextSibling); - assertTrue("urn:document".equals(nextSibling.getNamespaceURI())); - assertTrue("Paragraph".equals(nextSibling.getLocalName())); - - } - - @Test - public void testSetSignature_Base64_2() throws JAXBException, SLCommandException, XMLStreamException { - - SignatureInfoCreationType signatureInfo = unmarshalSignatureInfo("SignatureInfo_Base64_2.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), null); - - signature.setSignatureInfo(signatureInfo); - - Node parent = signature.getParent(); - Node nextSibling = signature.getNextSibling(); - - assertNotNull(parent); - assertTrue("XMLDocument".equals(parent.getLocalName())); - - assertNotNull(nextSibling); - assertTrue("Paragraph".equals(nextSibling.getLocalName())); - - } - - @Test - public void testSetSignature_Base64_3() throws JAXBException, SLCommandException, XMLStreamException { - - SignatureInfoCreationType signatureInfo = unmarshalSignatureInfo("SignatureInfo_Base64_3.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), null); - - signature.setSignatureInfo(signatureInfo); - - Node parent = signature.getParent(); - Node nextSibling = signature.getNextSibling(); - - assertNotNull(parent); - assertTrue("XMLDocument".equals(parent.getLocalName())); - - assertNotNull(nextSibling); - assertTrue("Paragraph".equals(nextSibling.getLocalName())); - - } - - @Test - public void testSetSignatureInfo_XMLContent_1() throws JAXBException, SLCommandException, XMLStreamException { - - SignatureInfoCreationType signatureInfo = unmarshalSignatureInfo("SignatureInfo_XMLContent_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), null); - - signature.setSignatureInfo(signatureInfo); - - Node parent = signature.getParent(); - Node nextSibling = signature.getNextSibling(); - - assertNotNull(parent); - assertTrue("urn:document".equals(parent.getNamespaceURI())); - assertTrue("Whole".equals(parent.getLocalName())); - - assertNull(nextSibling); - - } - - @Test - public void testSetSignature_Reference_1() throws JAXBException, SLCommandException, XMLStreamException { - - SignatureInfoCreationType signatureInfo = unmarshalSignatureInfo("SignatureInfo_Reference_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), null); - - signature.setSignatureInfo(signatureInfo); - - Node parent = signature.getParent(); - Node nextSibling = signature.getNextSibling(); - - assertNotNull(parent); - assertTrue("urn:document".equals(parent.getNamespaceURI())); - assertTrue("Paragraph".equals(parent.getLocalName())); - - assertNull(nextSibling); - - } - - // - // - // DataObject - // - // - - @SuppressWarnings("unchecked") - private List unmarshalDataObjectInfo(String file) throws JAXBException, XMLStreamException { - - Object object = unmarshal(file); - - Object requestType = ((JAXBElement) object).getValue(); - - assertTrue(requestType instanceof CreateXMLSignatureRequestType); - - List dataObjectInfos = ((CreateXMLSignatureRequestType) requestType).getDataObjectInfo(); - - assertNotNull(dataObjectInfos); - - return dataObjectInfos; - - } - - private void signAndMarshalSignature(Signature signature) throws MarshalException, XMLSignatureException, SLCommandException, SLViewerException { - - Node parent = signature.getParent(); - Node nextSibling = signature.getNextSibling(); - - DOMSignContext signContext = (nextSibling == null) - ? new DOMSignContext(privateKey, parent) - : new DOMSignContext(privateKey, parent, nextSibling); - - signature.sign(signContext); - - Document document = signature.getDocument(); - - DOMImplementationLS domImplLS = DOMUtils.getDOMImplementationLS(); - LSOutput output = domImplLS.createLSOutput(); - output.setByteStream(System.out); - - LSSerializer serializer = domImplLS.createLSSerializer(); -// serializer.getDomConfig().setParameter("format-pretty-print", Boolean.TRUE); - serializer.getDomConfig().setParameter("namespaces", Boolean.FALSE); - serializer.write(document, output); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_Base64Content_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Base64Content_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.setSignerCeritifcate(certificate); - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 1); - - Transform transform = transforms.get(0); - assertTrue(Transform.BASE64.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 2.", objects.size() == 2); - - XMLObject object = objects.get(0); - - assertTrue(("#" + object.getId()).equals(reference.getURI())); - - } - - @SuppressWarnings("unchecked") - @Test - - public void testDataObject_XMLContent_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_XMLContent_1 \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_XMLContent_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.setSignerCeritifcate(certificate); - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 2); - - Transform transform = transforms.get(0); - assertTrue(Transform.XPATH2.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 2.", objects.size() == 2); - - XMLObject object = objects.get(0); - - assertTrue(("#" + object.getId()).equals(reference.getURI())); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_XMLContent_2() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_XMLContent_2 \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_XMLContent_2.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.setSignerCeritifcate(certificate); - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 2); - - Transform transform = transforms.get(0); - assertTrue(Transform.XPATH2.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 2.", objects.size() == 2); - - XMLObject object = objects.get(0); - - assertTrue(("#" + object.getId()).equals(reference.getURI())); - - } - - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_LocRefContent_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_LocRefContent_1 \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_LocRefContent_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 2); - - Transform transform = transforms.get(0); - assertTrue(Transform.XPATH2.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 2.", objects.size() == 2); - - XMLObject object = objects.get(0); - - assertTrue(("#" + object.getId()).equals(reference.getURI())); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_LocRefContent_2() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_LocRefContent_2 \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_LocRefContent_2.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 1); - - Transform transform = transforms.get(0); - assertTrue(Transform.BASE64.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 2.", objects.size() == 2); - - XMLObject object = objects.get(0); - - assertTrue(("#" + object.getId()).equals(reference.getURI())); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_Reference_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_Reference_1 \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Reference_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 1); - - Transform transform = transforms.get(0); - assertTrue(Transform.BASE64.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 2.", objects.size() == 2); - - XMLObject object = objects.get(0); - - assertTrue(("#" + object.getId()).equals(reference.getURI())); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_Detached_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_Detached_1 \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Detached_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 0); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue(objects.size() == 1); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_Detached_Base64Content() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_Detached_Base64Content \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Detached_Base64Content.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 0); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue(objects.size() == 1); - - } - - @SuppressWarnings("unchecked") - @Test - public void testDataObject_Detached_LocRefContent() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - System.out.println("\n ****************** testDataObject_Detached_LocRefContent \n"); - - List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Detached_LocRefContent.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue(transforms.size() == 0); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue(objects.size() == 1); - - } - - // - // - // TransformsInfo - // - // - - @SuppressWarnings("unchecked") - private CreateXMLSignatureRequestType unmarshalCreateXMLSignatureRequest(String file) throws JAXBException, XMLStreamException { - - Object object = unmarshal(file); - - Object requestType = ((JAXBElement) object).getValue(); - - assertTrue(requestType instanceof CreateXMLSignatureRequestType); - - return (CreateXMLSignatureRequestType) requestType; - - } - - - @SuppressWarnings("unchecked") - @Test - public void testTransformsInfo_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - CreateXMLSignatureRequestType requestType = unmarshalCreateXMLSignatureRequest("TransformsInfo_1.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - - signature.setSignatureInfo(requestType.getSignatureInfo()); - - List dataObjectInfos = requestType.getDataObjectInfo(); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.setSignerCeritifcate(certificate); - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue("Size " + transforms.size() + "", transforms.size() == 3); - - Transform transform = transforms.get(0); - assertTrue(Transform.ENVELOPED.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 1.", objects.size() == 1); - - } - - @SuppressWarnings("unchecked") - @Test - @Ignore - public void testTransformsInfo_2() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { - - CreateXMLSignatureRequestType requestType = unmarshalCreateXMLSignatureRequest("TransformsInfo_2.xml"); - - Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); - - - signature.setSignatureInfo(requestType.getSignatureInfo()); - - List dataObjectInfos = requestType.getDataObjectInfo(); - - for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { - signature.addDataObject(dataObjectInfo); - } - - signature.setSignerCeritifcate(certificate); - - signature.buildXMLSignature(); - - signAndMarshalSignature(signature); - - List references = signature.getReferences(); - assertTrue(references.size() == 2); - - Reference reference = references.get(0); - assertNotNull(reference.getId()); - - List transforms = reference.getTransforms(); - assertTrue("Size " + transforms.size() + "", transforms.size() == 2); - - Transform transform = transforms.get(0); - assertTrue(Transform.XSLT.equals(transform.getAlgorithm())); - - List objects = signature.getXMLObjects(); - assertNotNull(objects); - assertTrue("Size " + objects.size() + " but should be 1.", objects.size() == 1); - - } - - -} diff --git a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java b/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java deleted file mode 100644 index 8adeadee..00000000 --- a/mocca-1.2.11/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java +++ /dev/null @@ -1,154 +0,0 @@ -/* -* 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.stal.dummy; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.security.KeyStore; -import java.security.PrivateKey; -import java.security.Signature; -import java.security.cert.CertificateEncodingException; -import java.security.cert.X509Certificate; -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.List; -import java.util.Locale; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.InfoboxReadRequest; -import at.gv.egiz.stal.InfoboxReadResponse; -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.SignRequest; -import at.gv.egiz.stal.SignResponse; - -public class DummySTAL implements STAL { - - static Log log = LogFactory.getLog(DummySTAL.class); - - protected X509Certificate cert = null; - protected PrivateKey privateKey = null; - - public DummySTAL() { - try { - KeyStore ks = KeyStore.getInstance("pkcs12"); - InputStream ksStream = getClass().getClassLoader().getResourceAsStream( - "at/gv/egiz/bku/slcommands/impl/Cert.p12"); - ks.load(ksStream, "1622".toCharArray()); - for (Enumeration aliases = ks.aliases(); aliases - .hasMoreElements();) { - String alias = aliases.nextElement(); - log.debug("Found alias " + alias + " in keystore"); - if (ks.isKeyEntry(alias)) { - log.debug("Found key entry for alias: " + alias); - privateKey = (PrivateKey) ks.getKey(alias, "1622".toCharArray()); - cert = (X509Certificate) ks.getCertificate(alias); - System.out.println(cert); - } - } - } catch (Exception e) { - log.error(e); - } - - } - - @Override - public List handleRequest(List requestList) { - - List responses = new ArrayList(); - for (STALRequest request : requestList) { - - log.debug("Got STALRequest " + request + "."); - - if (request instanceof InfoboxReadRequest) { - - String infoboxIdentifier = ((InfoboxReadRequest) request) - .getInfoboxIdentifier(); - InputStream stream = getClass().getClassLoader().getResourceAsStream( - "at/gv/egiz/stal/dummy/infoboxes4/" + infoboxIdentifier + ".bin"); - - STALResponse response; - if (stream != null) { - - log.debug("Infobox " + infoboxIdentifier + " found."); - - byte[] infobox; - try { - ByteArrayOutputStream buffer = new ByteArrayOutputStream(); - int b; - while ((b = stream.read()) != -1) { - buffer.write(b); - } - infobox = buffer.toByteArray(); - } catch (IOException e) { - throw new RuntimeException(e); - } - - InfoboxReadResponse infoboxReadResponse = new InfoboxReadResponse(); - infoboxReadResponse.setInfoboxValue(infobox); - response = infoboxReadResponse; - - } else if ((infoboxIdentifier.equals("SecureSignatureKeypair")) ||(infoboxIdentifier.equals("CertifiedKeypair"))) { - try { - InfoboxReadResponse infoboxReadResponse = new InfoboxReadResponse(); - infoboxReadResponse.setInfoboxValue(cert.getEncoded()); - response = infoboxReadResponse; - } catch (CertificateEncodingException e) { - log.error(e); - response = new ErrorResponse(); - } - } else { - - log.debug("Infobox " + infoboxIdentifier + " not found."); - - response = new ErrorResponse(); - } - responses.add(response); - - } else if (request instanceof SignRequest) { - try { - - SignRequest signReq = (SignRequest) request; - Signature s = Signature.getInstance("SHA1withRSA"); - s.initSign(privateKey); - s.update(signReq.getSignedInfo()); - byte[] sigVal = s.sign(); - SignResponse resp = new SignResponse(); - resp.setSignatureValue(sigVal); - responses.add(resp); - } catch (Exception e) { - log.error(e); - responses.add(new ErrorResponse()); - } - - } else { - - log.debug("Request not implemented."); - - responses.add(new ErrorResponse()); - } - - } - - return responses; - } -} -- cgit v1.2.3