From 9372b4746e1b99511c0e888d840f12d4fb626b2d Mon Sep 17 00:00:00 2001 From: tkellner Date: Thu, 28 Nov 2013 13:24:02 +0000 Subject: Add CMS Signature Command Test git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@1236 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../impl/CreateCMSSignatureCommandImplTest.java | 103 +++++++++++++++++++++ .../CreateCMSSignatureRequest.xml | 10 ++ 2 files changed, 113 insertions(+) create mode 100644 bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateCMSSignatureCommandImplTest.java create mode 100644 bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/createcmssignaturerequest/CreateCMSSignatureRequest.xml (limited to 'bkucommon/src/test') diff --git a/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateCMSSignatureCommandImplTest.java b/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateCMSSignatureCommandImplTest.java new file mode 100644 index 00000000..94f03584 --- /dev/null +++ b/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/CreateCMSSignatureCommandImplTest.java @@ -0,0 +1,103 @@ +/* + * Copyright 2011 by Graz University of Technology, Austria + * MOCCA has been developed by the E-Government Innovation Center EGIZ, a joint + * initiative of the Federal Chancellery Austria and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ + + +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.io.InputStreamReader; + +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.CreateCMSSignatureCommand; +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.bku.utils.urldereferencer.URLDereferencer; +import at.gv.egiz.stal.STAL; +import at.gv.egiz.stal.STALFactory; + +//@Ignore +public class CreateCMSSignatureCommandImplTest { + + protected static ApplicationContext appCtx; + private SLCommandFactory factory; + + private STAL stal; + + private URLDereferencer urlDereferencer; + + @BeforeClass + public static void setUpClass() { + appCtx = new ClassPathXmlApplicationContext("at/gv/egiz/bku/slcommands/testApplicationContext.xml"); + XSecProvider.addAsProvider(true); + } + + @Before + public void setUp() { + Object bean = appCtx.getBean("slCommandFactory"); + assertTrue(bean instanceof SLCommandFactory); + + factory = (SLCommandFactory) bean; + + bean = appCtx.getBean("stalFactory"); + assertTrue(bean instanceof STALFactory); + + stal = ((STALFactory) bean).createSTAL(); + + bean = appCtx.getBean("urlDereferencer"); + assertTrue(bean instanceof URLDereferencer); + + urlDereferencer = (URLDereferencer) bean; + + } + + @Test + public void testCreateCMSSignatureRequest() throws SLCommandException, SLRuntimeException, SLRequestException, SLVersionException { + InputStream inputStream = getClass().getClassLoader().getResourceAsStream("at/gv/egiz/bku/slcommands/createcmssignaturerequest/CreateCMSSignatureRequest.xml"); + assertNotNull(inputStream); + + SLCommand command = factory.createSLCommand(new StreamSource(new InputStreamReader(inputStream))); + assertTrue(command instanceof CreateCMSSignatureCommand); + + SLCommandContext context = new SLCommandContext(stal, urlDereferencer); + SLResult result = command.execute(context); + result.writeTo(new StreamResult(System.out), false); + } +} diff --git a/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/createcmssignaturerequest/CreateCMSSignatureRequest.xml b/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/createcmssignaturerequest/CreateCMSSignatureRequest.xml new file mode 100644 index 00000000..28e1fc38 --- /dev/null +++ b/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/createcmssignaturerequest/CreateCMSSignatureRequest.xml @@ -0,0 +1,10 @@ + + + CertifiedKeypair + + + text/plain + + Vm9uIGRlciBTaWduYXR1ciB1bXNjaGxvc3NlbmUgRGF0ZW4u + + \ No newline at end of file -- cgit v1.2.3