1 /* |
1 /* |
2 * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
18 * |
18 * |
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
20 * or visit www.oracle.com if you need additional information or have any |
20 * or visit www.oracle.com if you need additional information or have any |
21 * questions. |
21 * questions. |
22 */ |
22 */ |
23 |
|
24 package stream.XMLStreamReaderTest; |
23 package stream.XMLStreamReaderTest; |
25 |
24 |
|
25 import java.io.StringReader; |
|
26 import java.util.NoSuchElementException; |
26 import javax.xml.stream.XMLInputFactory; |
27 import javax.xml.stream.XMLInputFactory; |
27 import javax.xml.stream.XMLStreamConstants; |
28 import javax.xml.stream.XMLStreamConstants; |
28 import javax.xml.stream.XMLStreamReader; |
29 import javax.xml.stream.XMLStreamReader; |
29 |
30 |
30 import org.testng.Assert; |
31 import org.testng.Assert; |
32 import org.testng.annotations.Listeners; |
33 import org.testng.annotations.Listeners; |
33 import org.testng.annotations.Test; |
34 import org.testng.annotations.Test; |
34 |
35 |
35 /* |
36 /* |
36 * @test |
37 * @test |
37 * @bug 8167340 |
38 * @bug 8167340 8204329 |
38 * @library /javax/xml/jaxp/libs /javax/xml/jaxp/unittest |
39 * @library /javax/xml/jaxp/libs /javax/xml/jaxp/unittest |
39 * @run testng/othervm -DrunSecMngr=true stream.XMLStreamReaderTest.StreamReaderTest |
40 * @run testng/othervm -DrunSecMngr=true stream.XMLStreamReaderTest.StreamReaderTest |
40 * @run testng/othervm stream.XMLStreamReaderTest.StreamReaderTest |
41 * @run testng/othervm stream.XMLStreamReaderTest.StreamReaderTest |
41 * @summary Verifies patches for StreamReader bugs |
42 * @summary Verifies patches for StreamReader bugs |
42 */ |
43 */ |
43 @Listeners({jaxp.library.FilePolicy.class}) |
44 @Listeners({jaxp.library.FilePolicy.class}) |
44 public class StreamReaderTest { |
45 public class StreamReaderTest { |
|
46 @Test(expectedExceptions = NoSuchElementException.class) |
|
47 public void testNext() throws Exception { |
|
48 XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance(); |
|
49 XMLStreamReader xmlStreamReader = xmlInputFactory.createXMLStreamReader( |
|
50 new StringReader("<?xml version='1.0'?><foo/>")); |
|
51 |
|
52 while (xmlStreamReader.hasNext()) { |
|
53 int event = xmlStreamReader.next(); |
|
54 } |
|
55 // no more event |
|
56 xmlStreamReader.next(); |
|
57 } |
|
58 |
|
59 |
45 /** |
60 /** |
46 * Verifies that after switching to a different XML Version (1.1), the parser |
61 * Verifies that after switching to a different XML Version (1.1), the parser |
47 * is initialized properly (the listener was not registered in this case). |
62 * is initialized properly (the listener was not registered in this case). |
48 * |
63 * |
49 * @param path the path to XML source |
64 * @param path the path to XML source |