blob: d2a3d320f61ce4e18d7d5dd6884249d6656ee103 [file] [log] [blame]
/*
* Copyright (c) 2011, 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:
// Matt MacIvor - 2011 March 21 - 2.3 - Initial implementation
package org.eclipse.persistence.testing.jaxb.xmlvirtualaccessmethods.proporder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.eclipse.persistence.jaxb.JAXBContextFactory;
import org.eclipse.persistence.jaxb.JAXBContextProperties;
import org.eclipse.persistence.testing.jaxb.JAXBWithJSONTestCases;
public class PropOrderTestCases extends JAXBWithJSONTestCases {
public PropOrderTestCases(String name) throws Exception {
super(name);
setControlDocument("org/eclipse/persistence/testing/jaxb/xmlvirtualaccessmethods/proporder/customer.xml");
setControlJSON("org/eclipse/persistence/testing/jaxb/xmlvirtualaccessmethods/proporder/customer.json");
setTypes(new Class[] {Customer.class, Parent.class, PhoneNumber.class, Address.class});
}
@Override
protected Map getProperties() {
Map<String, Object> properties = new HashMap<String, Object>();
Map<String, Object> overrides = new HashMap<String, Object>();
overrides.put("org.eclipse.persistence.testing.jaxb.xmlvirtualaccessmethods.proporder", "org/eclipse/persistence/testing/jaxb/xmlvirtualaccessmethods/proporder/binding.xml");
properties.put(JAXBContextProperties.OXM_METADATA_SOURCE, overrides);
return properties;
}
@Override
protected Object getControlObject() {
Customer customer = new Customer();
customer.set("firstName", "Jane");
customer.set("lastName", "Doe");
Address billingAddress = new Address();
billingAddress.setStreet("1 Billing Street");
customer.setBillingAddress(billingAddress);
Address shippingAddress = new Address();
shippingAddress.setStreet("2 Shipping Road");
customer.set("shippingAddress", shippingAddress);
List<PhoneNumber> phoneNumbers = new ArrayList<PhoneNumber>(2);
PhoneNumber workPhoneNumber = new PhoneNumber();
phoneNumbers.add(workPhoneNumber);
PhoneNumber homePhoneNumber = new PhoneNumber();
phoneNumbers.add(homePhoneNumber);
customer.set("phoneNumbers", phoneNumbers);
return customer;
}
@Override
public String getWriteControlJSONFormatted(){
return "org/eclipse/persistence/testing/jaxb/xmlvirtualaccessmethods/proporder/customer_formatted.json";
}
@Override
public boolean shouldRemoveWhitespaceFromControlDocJSON(){
return false;
}
}