From 6918d9e9c8b6584d9026fe00b7d7c55ad0ba77a8 Mon Sep 17 00:00:00 2001 From: Inigo Goiri Date: Mon, 28 May 2018 16:45:42 -0700 Subject: [PATCH] HADOOP-15498. TestHadoopArchiveLogs (#testGenerateScript, #testPrepareWorkingDir) fails on Windows. Contributed by Anbang Hu. (cherry picked from commit 8fdc993a993728c65084d7dc3ac469059cb1f603) --- .../apache/hadoop/tools/TestHadoopArchiveLogs.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/hadoop-tools/hadoop-archive-logs/src/test/java/org/apache/hadoop/tools/TestHadoopArchiveLogs.java b/hadoop-tools/hadoop-archive-logs/src/test/java/org/apache/hadoop/tools/TestHadoopArchiveLogs.java index 2ddd4c5daeb..a1b662ce183 100644 --- a/hadoop-tools/hadoop-archive-logs/src/test/java/org/apache/hadoop/tools/TestHadoopArchiveLogs.java +++ b/hadoop-tools/hadoop-archive-logs/src/test/java/org/apache/hadoop/tools/TestHadoopArchiveLogs.java @@ -25,6 +25,7 @@ import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.permission.FsAction; import org.apache.hadoop.fs.permission.FsPermission; +import org.apache.hadoop.util.Shell; import org.apache.hadoop.yarn.api.records.ApplicationId; import org.apache.hadoop.yarn.api.records.ApplicationReport; import org.apache.hadoop.yarn.api.records.ApplicationSubmissionContext; @@ -278,7 +279,7 @@ public class TestHadoopArchiveLogs { hal.generateScript(localScript); Assert.assertTrue(localScript.exists()); String script = IOUtils.toString(localScript.toURI()); - String[] lines = script.split(System.lineSeparator()); + String[] lines = script.split("\n"); Assert.assertEquals(22, lines.length); Assert.assertEquals("#!/bin/bash", lines[0]); Assert.assertEquals("set -e", lines[1]); @@ -368,7 +369,8 @@ public class TestHadoopArchiveLogs { Assert.assertTrue(dirPrepared); Assert.assertTrue(fs.exists(workingDir)); Assert.assertEquals( - new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.ALL, true), + new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.ALL, + !Shell.WINDOWS), fs.getFileStatus(workingDir).getPermission()); // Throw a file in the dir Path dummyFile = new Path(workingDir, "dummy.txt"); @@ -381,7 +383,8 @@ public class TestHadoopArchiveLogs { Assert.assertTrue(fs.exists(workingDir)); Assert.assertTrue(fs.exists(dummyFile)); Assert.assertEquals( - new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.ALL, true), + new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.ALL, + !Shell.WINDOWS), fs.getFileStatus(workingDir).getPermission()); // -force is true and the dir exists, so it will recreate it and the dummy // won't exist anymore @@ -390,7 +393,8 @@ public class TestHadoopArchiveLogs { Assert.assertTrue(dirPrepared); Assert.assertTrue(fs.exists(workingDir)); Assert.assertEquals( - new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.ALL, true), + new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.ALL, + !Shell.WINDOWS), fs.getFileStatus(workingDir).getPermission()); Assert.assertFalse(fs.exists(dummyFile)); }