HDFS-13558. TestDatanodeHttpXFrame does not shut down cluster. Contributed by Anbang Hu.
(cherry picked from commit 26f1e22fc9ee326e9c76503d347552faeb6c2d3b) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e5ff9f39 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e5ff9f39 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e5ff9f39 Branch: refs/heads/branch-3.1 Commit: e5ff9f3922b6cd5729d8a8852d689fedb28ded90 Parents: 0460201 Author: Inigo Goiri <inigo...@apache.org> Authored: Thu May 17 13:35:09 2018 -0700 Committer: Inigo Goiri <inigo...@apache.org> Committed: Thu May 17 13:35:40 2018 -0700 ---------------------------------------------------------------------- .../datanode/web/TestDatanodeHttpXFrame.java | 30 ++++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/e5ff9f39/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/web/TestDatanodeHttpXFrame.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/web/TestDatanodeHttpXFrame.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/web/TestDatanodeHttpXFrame.java index 9ecd8ea..62827a2 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/web/TestDatanodeHttpXFrame.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/web/TestDatanodeHttpXFrame.java @@ -23,6 +23,7 @@ import org.apache.hadoop.hdfs.HdfsConfiguration; import org.apache.hadoop.hdfs.MiniDFSCluster; import org.apache.hadoop.hdfs.server.datanode.DataNode; import org.apache.hadoop.http.HttpServer2; +import org.junit.After; import org.junit.Assert; import org.junit.Rule; import org.junit.Test; @@ -36,13 +37,24 @@ import java.net.URL; * Test that X-Frame-Options works correctly with DatanodeHTTPServer. */ public class TestDatanodeHttpXFrame { + + private MiniDFSCluster cluster = null; + @Rule public ExpectedException exception = ExpectedException.none(); + @After + public void cleanUp() { + if (cluster != null) { + cluster.shutdown(); + cluster = null; + } + } + @Test public void testDataNodeXFrameOptionsEnabled() throws Exception { boolean xFrameEnabled = true; - MiniDFSCluster cluster = createCluster(xFrameEnabled, null); + cluster = createCluster(xFrameEnabled, null); HttpURLConnection conn = getConn(cluster); String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS"); Assert.assertTrue("X-FRAME-OPTIONS is absent in the header", @@ -54,7 +66,7 @@ public class TestDatanodeHttpXFrame { @Test public void testNameNodeXFrameOptionsDisabled() throws Exception { boolean xFrameEnabled = false; - MiniDFSCluster cluster = createCluster(xFrameEnabled, null); + cluster = createCluster(xFrameEnabled, null); HttpURLConnection conn = getConn(cluster); String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS"); Assert.assertTrue("unexpected X-FRAME-OPTION in header", xfoHeader == null); @@ -63,25 +75,25 @@ public class TestDatanodeHttpXFrame { @Test public void testDataNodeXFramewithInvalidOptions() throws Exception { exception.expect(IllegalArgumentException.class); - createCluster(false, "Hadoop"); + cluster = createCluster(false, "Hadoop"); } - private MiniDFSCluster createCluster(boolean enabled, String + private static MiniDFSCluster createCluster(boolean enabled, String value) throws IOException { Configuration conf = new HdfsConfiguration(); conf.setBoolean(DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED, enabled); if (value != null) { conf.set(DFSConfigKeys.DFS_XFRAME_OPTION_VALUE, value); } - MiniDFSCluster cluster = + MiniDFSCluster dfsCluster = new MiniDFSCluster.Builder(conf).numDataNodes(1).build(); - cluster.waitActive(); - return cluster; + dfsCluster.waitActive(); + return dfsCluster; } - private HttpURLConnection getConn(MiniDFSCluster cluster) + private static HttpURLConnection getConn(MiniDFSCluster dfsCluster) throws IOException { - DataNode datanode = cluster.getDataNodes().get(0); + DataNode datanode = dfsCluster.getDataNodes().get(0); URL newURL = new URL("http://localhost:" + datanode.getInfoPort()); HttpURLConnection conn = (HttpURLConnection) newURL.openConnection(); conn.connect(); --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org