01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */package org.apache.cxf.staxutils;
19:
20: import javax.xml.stream.XMLInputFactory;
21: import javax.xml.stream.XMLStreamReader;
22:
23: import org.junit.Assert;
24: import org.junit.Test;
25:
26: public class DepthXMLStreamReaderTest extends Assert {
27:
28: @Test
29: public void testReader() throws Exception {
30: XMLInputFactory ifactory = StaxUtils.getXMLInputFactory();
31: XMLStreamReader reader = ifactory
32: .createXMLStreamReader(getClass().getResourceAsStream(
33: "./resources/amazon.xml"));
34:
35: DepthXMLStreamReader dr = new DepthXMLStreamReader(reader);
36:
37: StaxUtils.toNextElement(dr);
38: assertEquals("ItemLookup", dr.getLocalName());
39: assertEquals(XMLStreamReader.START_ELEMENT, reader
40: .getEventType());
41:
42: assertEquals(1, dr.getDepth());
43:
44: assertEquals(0, dr.getAttributeCount());
45:
46: dr.next();
47:
48: assertEquals(1, dr.getDepth());
49: assertTrue(dr.isWhiteSpace());
50:
51: dr.nextTag();
52:
53: assertEquals(2, dr.getDepth());
54: assertEquals("SubscriptionId", dr.getLocalName());
55:
56: dr.next();
57: assertEquals("1E5AY4ZG53H4AMC8QH82", dr.getText());
58:
59: dr.close();
60: }
61: }
|