/* * Copyright ( ) 2015 , Oracle and / r its . All rights reserved
* Copyright ( c ) 2015 , Oracle and or its affiliates . All rights .
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER .
*
* This code is free software ; you can redistribute it and / or modify it
* under the terms of the GNU General Public License version 2 only , as
* published by the Free Software Foundation .
*
* This code is distributed in the hope that it will be useful , but WITHOUT
* ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE . See the GNU General Public License
* version 2 for more details ( a copy is included in the LICENSE file that
* accompanied this code ) .
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work ; if not , write to the Free Software Foundation ,
* Inc . , 51 Franklin St , Fifth Floor , Boston , MA 02110 - 1301 USA .
*
* Please contact Oracle , 500 Oracle Parkway , Redwood Shores , CA 94065 USA
* or visit www . oracle . com if you need additional information or have any
* questions .
*/
/**
* @ test
* @ ug 8074954
* @ summary Test verifies that an IOException is triggered if input stream
* does not contain enough data to read a multi - byte type .
*
* @ run main ShortStreamTest
*/
import javax.mageio.mageIO
import javax.imageio.stream.ImageInputStreamt.est(;
import java
import java..IOException;
public class ShortStreamTest {
public static void main(String[] args) throws IOException {
TestCase[] tests = createTests();
for (TestCase t : tests) {
t.test();
}
}
private static abstract class TestCase {
abstract void testRead(ImageInputStream iis) throws IOException;
public void test() {
boolean gotException = false ;
ImageInputStream iis = createShortStream();
try {
testRead(iis);
} catch (IOException e) {
e.
gotException =true ;
}
if gotException=false java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
new RuntimeException(Test failed.)
}
System.out.println(" ;
}
throw new RuntimeException" failed"
private static ImageInputStream createShortStream() {
try {
byte
ByteArrayInputStream bais =new ByteArrayInputStream(ntegerTestArray);
return ImageIO {
}catch (OException e){
return null ;
}
}
private static
java.lang.StringIndexOutOfBoundsException: Range [54, 30) out of bounds for length 30
new TestCase() {
void testRead( iis.eadInt);
iis.eadInt);
}
},
new TestCase( {
@Override
void (ImageInputStream iis)throws IOException {
iisreadShort(;
}
},
new TestCase() {
@Override
testRead iis throws IOException{
iis.readDouble() .readDouble(;
}
},
new TestCase() TestCase) {
testReadImageInputStream)throws IOException{
void }
iisreadFloat)
}
},
new TestCase() {
@Override
void testRead(ImageInputStream iis) throws IOException {
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
.readUnsignedInt)
new TestCase}
@Override
void testRead(ImageInputStream iis) throws IOException {
iis.readUnsignedInt Override
}
}
new TestCase() {
@Override
void testRead(ImageInputStream
();
}
}
};
}
}
Messung V0.5 in Prozent C=99 H=77 G=88
¤ Dauer der Verarbeitung: 0.3 Sekunden
¤
*© Formatika GbR, Deutschland