public Object read(Object request, Reader reader, Map kvp) throws Exception { String requestText = IOUtils.toString(reader); RECORDED_REQUEST.set(requestText); return super.read(requestText, new StringReader(requestText), kvp); }
public Object read(Object request, Reader reader, Map kvp) throws Exception { String requestText = IOUtils.toString(reader); RECORDED_REQUEST.set(requestText); return super.read(requestText, new StringReader(requestText), kvp); }
@Test public void testXMLReaderInvalid() throws Exception { // create a schema invalid request String capRequest = getResourceAsString("GetCapabilities.xml"); capRequest = capRequest.replace("ows:Sections", "ows:foo"); try { CSWXmlReader reader = new CSWXmlReader("GetCapabilities", "2.0.2", new CSWConfiguration()); reader.read(null, new StringReader(capRequest), (Map) null); fail("the parsing should have failed, the document is invalid"); } catch (ServiceException e) { // it is a validation exception right? assertTrue(e.getCause() instanceof SAXParseException); SAXParseException cause = (SAXParseException) e.getCause(); assertTrue(cause.getMessage().contains("ows:foo")); } }
@Test public void testXMLReaderParameter() throws Exception { CSWXmlReader reader = new CSWXmlReader("GetRecords", "2.0.2", new CSWConfiguration()); GetRecordsType gr = (GetRecordsType) reader.read(null, getResourceAsReader("GetRecordsBrief.xml"), (Map) null); // check the attributes assertEquals("application/xml", gr.getOutputFormat()); assertEquals("urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0", gr.getOutputSchema()); // the query QueryType query = (QueryType) gr.getQuery(); List<QName> expected = new ArrayList<QName>(); String rimNamespace = "urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"; expected.add(new QName(rimNamespace, "Service")); expected.add(new QName(rimNamespace, "Classification")); expected.add(new QName(rimNamespace, "Association")); assertEquals(expected, query.getTypeNames()); // the element set name ElementSetNameType esn = query.getElementSetName(); expected.clear(); expected.add(new QName(rimNamespace, "Service")); assertEquals(expected, esn.getTypeNames()); assertEquals(ElementSetType.BRIEF, esn.getValue()); }
@Test public void testXMLReader() throws Exception { CSWXmlReader reader = new CSWXmlReader("GetCapabilities", "2.0.2", new CSWConfiguration()); GetCapabilitiesType caps = (GetCapabilitiesType) reader.read(null, getResourceAsReader("GetCapabilities.xml"), (Map) null); assertReturnedCapabilitiesComplete(caps); }
@Test public void testXMLReader() throws Exception { CSWXmlReader reader = new CSWXmlReader("GetRecordById", "2.0.2", new CSWConfiguration()); GetRecordByIdType dr = (GetRecordByIdType) reader.read(null, getResourceAsReader("GetRecordById.xml"), (Map) null); assertGetRecordByIdValid(dr); }
@Test public void testXMLReader() throws Exception { CSWXmlReader reader = new CSWXmlReader("DescribeRecord", "2.0.2", new CSWConfiguration()); DescribeRecordType dr = (DescribeRecordType) reader.read(null, getResourceAsReader("DescribeRecord.xml"), (Map) null); assertDescribeRecordValid(dr); }
@Test public void testXMLReaderProperty() throws Exception { CSWXmlReader reader = new CSWXmlReader("GetDomain", "2.0.2", new CSWConfiguration()); GetDomainType gd = (GetDomainType) reader.read(null, getResourceAsReader("GetDomainProperty.xml"), (Map) null); assertEquals("CSW", gd.getService()); assertEquals("2.0.2", gd.getVersion()); assertEquals("dc:title", gd.getPropertyName()); }
@Test public void testXMLReaderParameter() throws Exception { CSWXmlReader reader = new CSWXmlReader("GetDomain", "2.0.2", new CSWConfiguration()); GetDomainType gd = (GetDomainType) reader.read(null, getResourceAsReader("GetDomainParameter.xml"), (Map) null); assertEquals("CSW", gd.getService()); assertEquals("2.0.2", gd.getVersion()); assertEquals("GetRecords.resultType", gd.getParameterName()); }