diff options
Diffstat (limited to 'java/sdo-cts/sdo2.1/src/main/java/test/sdo21/tests/api/XMLHelper/QNameTestCase.java')
-rw-r--r-- | java/sdo-cts/sdo2.1/src/main/java/test/sdo21/tests/api/XMLHelper/QNameTestCase.java | 137 |
1 files changed, 0 insertions, 137 deletions
diff --git a/java/sdo-cts/sdo2.1/src/main/java/test/sdo21/tests/api/XMLHelper/QNameTestCase.java b/java/sdo-cts/sdo2.1/src/main/java/test/sdo21/tests/api/XMLHelper/QNameTestCase.java deleted file mode 100644 index 2071abfa04..0000000000 --- a/java/sdo-cts/sdo2.1/src/main/java/test/sdo21/tests/api/XMLHelper/QNameTestCase.java +++ /dev/null @@ -1,137 +0,0 @@ -/** - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package test.sdo21.tests.api.XMLHelper; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.io.IOException; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import org.junit.After; -import org.junit.Before; -import org.junit.Test; - -import test.sdo21.framework.CTSTestCase; - -import commonj.sdo.DataObject; -import commonj.sdo.Type; -import commonj.sdo.helper.XMLDocument; - - -public class QNameTestCase extends CTSTestCase { - private final String xsdString = - "<xsd:schema targetNamespace=\"http://www.example.com/simple\" " + - "xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" " + - "xmlns:simple=\"http://www.example.com/simple\"> " + - "<xsd:element name=\"stockQuote\" type=\"simple:Quote\"/> " + - "<xsd:complexType name=\"Quote\"> " + - "<xsd:sequence> " + - "<xsd:element name=\"symbol\" type=\"xsd:string\"/> " + - "<xsd:element name=\"policy\" type=\"xsd:QName\"/> " + - "</xsd:sequence> " + - "</xsd:complexType> " + - "</xsd:schema>"; - - private final String xmlString = - "<?xml version=\"1.0\" encoding=\"ASCII\"?> " + - "<simple:stockQuote xmlns:simple=\"http://www.example.com/simple\"> " + - "<symbol>fbnt</symbol> " + - "<policy>simple:stockQuote</policy> " + - "</simple:stockQuote>"; - - private final String TEST_NAMESPACE = "http://www.example.com/simple"; - - - /** - * Based on Spec 2.1, section 9.4.1, the return value of DataObject.get() on XSD QName property - * should be http://www.example.com/simple#stockQuote - * - * @see <a href="http://osoa.org/download/attachments/36/Java-SDO-Spec-v2.1.0-FINAL.pdf?version=1#page=95">2.1 spec section 9.4.1</a> - * @throws IOException - */ - @Test - public void testLoad() throws IOException { - XMLDocument doc = getScope().getXMLHelper().load(xmlString); - DataObject root = doc.getRootObject(); - assertEquals("http://www.example.com/simple#stockQuote", root.get("policy")); - } - - /** - * After serialization, the value of XSD QName property in XML should be <prefix>:stockQuote - */ - @Test - public void testSave() throws IOException { - Type quoteType = getScope().getTypeHelper().getType(TEST_NAMESPACE, "Quote"); - DataObject quote = getScope().getDataFactory().create(quoteType); - - quote.setString("symbol", "fbnt"); - quote.set("policy", "http://www.example.com/simple#stockQuote"); - - String str = getScope().getXMLHelper().save(quote, TEST_NAMESPACE, "stockQuote"); - int start = str.indexOf("<policy>"); - int end = str.indexOf("</policy>"); - assertTrue(start != -1 && end != -1); - - String policyValue = str.substring(start + "<policy>".length(), end); - - Pattern pattern = Pattern.compile(".*:stockQuote"); // prefix can be anything - - Matcher matcher = pattern.matcher(policyValue); - assertTrue(matcher.find()); - } - - /** - * Test the scenario that the xsd:QName property value contains non-existent namespace - */ - @Test - public void testSave2() throws IOException { - Type quoteType = getScope().getTypeHelper().getType(TEST_NAMESPACE, "Quote"); - DataObject quote = getScope().getDataFactory().create(quoteType); - - quote.setString("symbol", "fbnt"); - quote.set("policy", "http://www.example.com/simple2#stockQuote"); - - String str = getScope().getXMLHelper().save(quote, TEST_NAMESPACE, "stockQuote"); - - // Make sure the non-existent namespace was serialized - Pattern pattern = Pattern.compile(".*xmlns:.*=\"http://www.example.com/simple2\""); - Matcher matcher = pattern.matcher(str); - assertTrue(matcher.find()); - } - - @Before - @Override - public void setUp() throws Exception { - super.setUp(); - - - getScope().getXSDHelper().define(xsdString); - } - - @Override - @After - public void tearDown() throws Exception { - super.tearDown(); - } - - -} |