/******************************************************************************* * Copyright (c) 1998, 2015 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 v1.0 and Eclipse Distribution License v. 1.0 * which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * Oracle - initial API and implementation from Oracle TopLink ******************************************************************************/ package org.eclipse.persistence.testing.jaxb.jaxbelement.complex; import java.io.InputStream; import java.util.HashMap; import java.util.Map; import javax.xml.bind.JAXBElement; import javax.xml.namespace.QName; import junit.textui.TestRunner; import org.eclipse.persistence.testing.jaxb.jaxbelement.JAXBElementTestCases; import org.eclipse.persistence.testing.oxm.xmlroot.Person; import org.w3c.dom.Document; public class JAXBElementComplexTestCases extends JAXBElementTestCases { private final static String XML_RESOURCE = "org/eclipse/persistence/testing/jaxb/jaxbelement/complex/employee.xml"; private final static String JSON_RESOURCE = "org/eclipse/persistence/testing/jaxb/jaxbelement/complex/employee.json"; private final static String CONTROL_ELEMENT_NAME = "employee"; private final static Class targetClass = Object.class; public JAXBElementComplexTestCases(String name) throws Exception { super(name); setControlDocument(XML_RESOURCE); setControlJSON(JSON_RESOURCE); setTargetClass(targetClass); initXsiType(); } @Override protected Map<String, String> getAdditationalNamespaces() { Map<String, String> namespaces = new HashMap<>(); namespaces.put("test", "ns0"); return namespaces; } public static void main(String[] args) { String[] arguments = { "-c", "org.eclipse.persistence.testing.jaxb.jaxbelement.complex.JAXBElementComplexTestCases" }; TestRunner.main(arguments); } public Document getWriteControlDocument() throws Exception { InputStream inputStream = ClassLoader.getSystemResourceAsStream("org/eclipse/persistence/testing/jaxb/jaxbelement/complex/employee-write.xml"); Document writeControlDocument = parser.parse(inputStream); removeEmptyTextNodes(controlDocument); inputStream.close(); return writeControlDocument; } public Object getControlObject() { Person peep = new Person(); peep.setName(CONTROL_PERSON_NAME); return new JAXBElement(new QName(CONTROL_NAMESPACE_URI, CONTROL_ELEMENT_NAME), targetClass, peep); } }