From 62c4eb45e157d502463d797c1353802ca8e1e307 Mon Sep 17 00:00:00 2001 From: sg481n Date: Fri, 25 Aug 2017 01:57:24 -0400 Subject: Update project structure for aaf/cadi Update project structure from com.att to org.onap and add distribution management and staging plugin. Issue-id: AAF-22 Change-Id: Idf2b591139e38921ad28782a51486714a05dee92 Signed-off-by: sg481n --- .../cadi/test/JU_BufferedServletInputStream.java | 190 +++++++++++++++++++++ 1 file changed, 190 insertions(+) create mode 100644 core/src/test/java/org/onap/aaf/cadi/test/JU_BufferedServletInputStream.java (limited to 'core/src/test/java/org/onap/aaf/cadi/test/JU_BufferedServletInputStream.java') diff --git a/core/src/test/java/org/onap/aaf/cadi/test/JU_BufferedServletInputStream.java b/core/src/test/java/org/onap/aaf/cadi/test/JU_BufferedServletInputStream.java new file mode 100644 index 0000000..e496076 --- /dev/null +++ b/core/src/test/java/org/onap/aaf/cadi/test/JU_BufferedServletInputStream.java @@ -0,0 +1,190 @@ +/******************************************************************************* + * ============LICENSE_START==================================================== + * * org.onap.aaf + * * =========================================================================== + * * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * * =========================================================================== + * * 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. + * * ============LICENSE_END==================================================== + * * + * * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * * + ******************************************************************************/ +package org.onap.aaf.cadi.test; + +import static junit.framework.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.FileInputStream; +import java.io.IOException; + +import org.junit.Test; +import org.onap.aaf.cadi.BufferedServletInputStream; + +public class JU_BufferedServletInputStream { + + @Test + public void testByteRead() throws Exception { + FileInputStream fis = new FileInputStream("test/CBUSevent.xml"); + BufferedServletInputStream bsis = new BufferedServletInputStream(fis); + try { + bsis.mark(0); + int c; + byte aa[] = new byte[260]; + for(int i=0;i=0) { + aa[i]=(byte)c; + } + } + System.out.println(new String(aa)); + + bsis.reset(); + + byte bb[] = new byte[400]; + for(int i=0;i=0) { + bb[i]=(byte)c; + } + } + System.out.println(new String(bb)); + + } finally { + bsis.close(); + fis.close(); + } + } + + @Test + public void testByteArray() throws Exception { + FileInputStream fis = new FileInputStream("test/CBUSevent.xml"); + BufferedServletInputStream bsis = new BufferedServletInputStream(fis); + try { + bsis.mark(0); + byte aa[] = new byte[260]; + bsis.read(aa); + System.out.println(new String(aa)); + + bsis.reset(); + + byte bb[] = new byte[400]; + bsis.read(bb); + System.out.println(new String(bb)); + + } finally { + bsis.close(); + fis.close(); + } + } + + @Test + public void testDoubleRead() throws Exception { + FileInputStream fis = new FileInputStream("test/CBUSevent.xml"); + BufferedServletInputStream bsis = new BufferedServletInputStream(fis); + try { + bsis.mark(0); + byte aa[] = new byte[260]; + bsis.read(aa); + System.out.println(new String(aa)); + + bsis.reset(); + + byte bb[] = new byte[400]; + bsis.read(bb); + System.out.println(new String(bb)); + + } finally { + bsis.close(); + fis.close(); + } + } + + @Test + public void testByteArray2() throws Exception { + FileInputStream fis = new FileInputStream("test/CBUSevent.xml"); + try { + BufferedServletInputStream bsis = new BufferedServletInputStream(fis); + byte[] content = null; + byte aa[] = new byte[500]; + for(int i=0;i<2000;++i) { + bsis.mark(0); + bsis.read(aa,0,260); + if(i==0)System.out.println(new String(aa)); + + bsis.reset(); + + bsis.read(aa,0,aa.length); + if(i==0) { + System.out.println(new String(aa)); + content = aa; + aa = new byte[400]; + } + bsis = new BufferedServletInputStream(new ByteArrayInputStream(content)); + + } + + System.out.println(new String(aa)); + + } finally { + fis.close(); + } + } + + // "Bug" 4/22/2013 + // Some XML code expects Buffered InputStream can never return 0... This isn't actually true, but we'll accommodate as far + // as we can. + // Here, we make sure we set and read the Buffered data, making sure the buffer is empty on the last test... + @Test + public void issue04_22_2013() throws IOException { + String testString = "We want to read in and get out with a Buffered Stream seamlessly."; + ByteArrayInputStream bais = new ByteArrayInputStream(testString.getBytes()); + BufferedServletInputStream bsis = new BufferedServletInputStream(bais); + try { + bsis.mark(0); + byte aa[] = new byte[testString.length()]; // 65 count... important for our test (divisible by 5); + + int read; + for(int i=0;i=0;i+=read) { + read = bsis.read(bb,i,5); + switch(i) { + case 65: + assertEquals(read,-1); + break; + default: + assertEquals(read,5); + } + } + System.out.println(new String(bb)); + assertEquals(testString,new String(aa)); + assertEquals(testString,new String(bb)); + + } finally { + bsis.close(); + bais.close(); + } + + } + + +} -- cgit 1.2.3-korg