Sean Busbey created HBASE-19020: ----------------------------------- Summary: TestXmlParsing exception checking relies on a particular xml implementation without declaring it. Key: HBASE-19020 URL: https://issues.apache.org/jira/browse/HBASE-19020 Project: HBase Issue Type: Bug Components: dependencies, REST Affects Versions: 2.0.0-alpha-1, 1.1.9, 1.2.5, 1.3.0, 1.4.0 Reporter: Sean Busbey Assignee: Sean Busbey Fix For: 1.4.0, 1.3.2, 1.5.0, 1.2.7, 2.0.0-beta-1, 1.1.13
The test added in HBASE-17424 is overly specific: {code} @Test public void testFailOnExternalEntities() throws Exception { final String externalEntitiesXml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + " <!DOCTYPE foo [ <!ENTITY xxe SYSTEM \"/tmp/foo\"> ] >" + " <ClusterVersion>&xee;</ClusterVersion>"; Client client = mock(Client.class); RemoteAdmin admin = new RemoteAdmin(client, HBaseConfiguration.create(), null); Response resp = new Response(200, null, externalEntitiesXml.getBytes()); when(client.get("/version/cluster", Constants.MIMETYPE_XML)).thenReturn(resp); try { admin.getClusterVersion(); fail("Expected getClusterVersion() to throw an exception"); } catch (IOException e) { final String exceptionText = StringUtils.stringifyException(e); final String expectedText = "The entity \"xee\" was referenced, but not declared."; LOG.error("exception text: " + exceptionText, e); assertTrue("Exception does not contain expected text", exceptionText.contains(expectedText)); } } {code} Specifically, when running against Hadoop 3.0.0-beta1 this test fails because the exception text is different, though I'm still figuring out why. -- This message was sent by Atlassian JIRA (v6.4.14#64029)