1 /*******************************************************************************
\r
2 * ============LICENSE_START====================================================
\r
4 * * ===========================================================================
\r
5 * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
\r
6 * * ===========================================================================
\r
7 * * Licensed under the Apache License, Version 2.0 (the "License");
\r
8 * * you may not use this file except in compliance with the License.
\r
9 * * You may obtain a copy of the License at
\r
11 * * http://www.apache.org/licenses/LICENSE-2.0
\r
13 * * Unless required by applicable law or agreed to in writing, software
\r
14 * * distributed under the License is distributed on an "AS IS" BASIS,
\r
15 * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
16 * * See the License for the specific language governing permissions and
\r
17 * * limitations under the License.
\r
18 * * ============LICENSE_END====================================================
\r
20 * * ECOMP is a trademark and service mark of AT&T Intellectual Property.
\r
22 ******************************************************************************/
\r
23 package org.onap.aaf.cadi.wsse.test;
\r
25 import static junit.framework.Assert.assertEquals;
\r
26 import static junit.framework.Assert.assertNotNull;
\r
27 import static junit.framework.Assert.assertNull;
\r
29 import java.io.ByteArrayInputStream;
\r
30 import java.io.File;
\r
31 import java.io.FileInputStream;
\r
33 import javax.xml.stream.XMLStreamException;
\r
35 import org.junit.Test;
\r
36 import org.onap.aaf.cadi.BasicCred;
\r
37 import org.onap.aaf.cadi.BufferedServletInputStream;
\r
38 import org.onap.aaf.cadi.wsse.WSSEParser;
\r
40 public class JU_WSSE_Read {
\r
43 public void test() {
\r
45 final BasicCred bc = new BasicCred() {
\r
47 private String user;
\r
48 private byte[] password;
\r
50 public void setUser(String user) {
\r
54 public void setCred(byte[] passwd) {
\r
55 this.password = passwd;
\r
58 public String getUser() {
\r
62 public byte[] getCred() {
\r
67 WSSEParser wp = new WSSEParser();
\r
69 FileInputStream fis;
\r
70 fis = new FileInputStream("test/example.xml");
\r
71 BufferedServletInputStream is = new BufferedServletInputStream(fis);
\r
75 assertNull(wp.parse(bc, is));
\r
78 assertEquals(814,is.buffered());
\r
80 String password = new String(bc.getCred());
\r
81 System.out.println("CadiWrap credentials are: " + bc.getUser() + ", " + password);
\r
82 assertEquals("some_user", bc.getUser());
\r
83 assertEquals("some_password", password);
\r
90 fis = new FileInputStream("test/CBUSevent.xml");
\r
91 is = new BufferedServletInputStream(fis);
\r
95 assertNull(wp.parse(bc, is));
\r
98 assertEquals(667,is.buffered());
\r
100 String password = new String(bc.getCred());
\r
101 System.out.println("CadiWrap credentials are: " + bc.getUser() + ", " + password);
\r
102 assertEquals("none", bc.getUser());
\r
103 assertEquals("none", password);
\r
110 fis = new FileInputStream("test/example.xml");
\r
114 XMLStreamException ex = wp.parse(bc, fis);
\r
116 assertNull(bc.getUser());
\r
117 assertNull(bc.getCred());
\r
120 fis = new FileInputStream("test/exampleNoSecurity.xml");
\r
124 assertNull(wp.parse(bc, fis));
\r
125 assertNull(bc.getUser());
\r
126 assertNull(bc.getCred());
\r
131 fis = new FileInputStream("test/exampleBad1.xml");
\r
135 assertNull(wp.parse(bc, fis));
\r
136 assertNull(bc.getUser());
\r
137 assertNull(bc.getCred());
\r
142 XMLStreamException e = wp.parse(bc, new ByteArrayInputStream("Not XML".getBytes())); // empty
\r
145 e = wp.parse(bc, new ByteArrayInputStream("".getBytes())); // empty
\r
149 long start, count = 0L;
\r
151 File f = new File("test/CBUSevent.xml");
\r
152 fis = new FileInputStream(f);
\r
153 is = new BufferedServletInputStream(fis);
\r
156 while(is.read()>=0);
\r
161 for(int i=0;i<iter;++i) {
\r
162 start = System.nanoTime();
\r
165 assertNull(wp.parse(bc, is));
\r
167 count += System.nanoTime()-start;
\r
170 float ms = count/1000000f;
\r
171 System.out.println("Executed " + iter + " WSSE reads from Memory Stream in " + ms + "ms. " + ms/iter + "ms per trans");
\r
175 fis = new FileInputStream("test/error2013_04_23.xml");
\r
179 assertNull(wp.parse(bc, fis));
\r
180 assertNull(bc.getUser());
\r
181 assertNull(bc.getCred());
\r
185 } catch(Exception e) {
\r
186 e.printStackTrace(System.err);
\r