blob: 21d98be1d2ce1dfa7b92793b80f4f81680869445 [file] [log] [blame]
/*
* Copyright (c) 2012, 2021 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
// Contributors:
// Denise Smith - 2.4 - January 2012
package org.eclipse.persistence.testing.jaxb.unmarshaller.space;
import java.io.InputStream;
import jakarta.xml.bind.JAXBElement;
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamReader;
import org.eclipse.persistence.jaxb.UnmarshallerProperties;
import org.eclipse.persistence.testing.jaxb.JAXBTestCases;
public class UnmarshalWithSpaceEventTestCases extends JAXBTestCases{
private final static String XML_RESOURCE = "org/eclipse/persistence/testing/jaxb/unmarshaller/space/testObject.xml";
private final static String XML_WRITE_RESOURCE = "org/eclipse/persistence/testing/jaxb/unmarshaller/space/testObjectWrite.xml";
public UnmarshalWithSpaceEventTestCases(String name) throws Exception {
super(name);
setClasses(new Class[]{TestObject.class});
setControlDocument(XML_RESOURCE);
setWriteControlDocument(XML_WRITE_RESOURCE);
}
@Override
protected Object getControlObject() {
TestObject testObject = new TestObject();
testObject.theString = "abc123";
return testObject;
}
public void testXMLToObjectFromXMLStreamReaderWithClass() throws Exception {
if(null != XML_INPUT_FACTORY && isUnmarshalTest()) {
InputStream instream = ClassLoader.getSystemResourceAsStream(resourceName);
XMLStreamReader xmlStreamReader = XML_INPUT_FACTORY.createXMLStreamReader(instream);
jaxbUnmarshaller.setProperty(UnmarshallerProperties.MEDIA_TYPE, "application/xml");
JAXBElement<TestObject> testObject = jaxbUnmarshaller.unmarshal(xmlStreamReader, TestObject.class);
instream.close();
xmlToObjectTest(testObject, getJAXBElementControlObject());
}
}
private JAXBElement getJAXBElementControlObject(){
JAXBElement<TestObject> jbe = new JAXBElement<TestObject>(new QName("testObject"), TestObject.class, (TestObject)getControlObject());
return jbe;
}
}