/** @deprecated use {@link Command#run(String...argv)} */ @Deprecated @Override public int runAll() { return run(args); }
/** @deprecated use {@link Command#run(String...argv)} */ @Deprecated @Override public int runAll() { return run(args); }
/** @deprecated use {@link Command#run(String...argv)} */ @Deprecated @Override public int runAll() { return run(args); } }
/** @deprecated use {@link Command#run(String...argv)} */ @Deprecated @Override public int runAll() { return run(args); } }
/** @deprecated use {@link Command#run(String...argv)} */ @Deprecated @Override public int runAll() { return run(args); } }
/** * Asserts that for the given command, the given arguments are considered valid * on Windows, but invalid elsewhere. * * @param cmd FsCommand to check * @param args String... arguments to check */ private static void assertValidArgumentsOnWindows(FsCommand cmd, String... args) { if (Shell.WINDOWS) { cmd.run(args); } else { assertIllegalArguments(cmd, args); } } }
/** * Asserts that for the given command, the given arguments are considered * invalid. The expectation is that the command will throw * IllegalArgumentException. * * @param cmd FsCommand to check * @param args String... arguments to check */ private static void assertIllegalArguments(FsCommand cmd, String... args) { try { cmd.run(args); fail("Expected IllegalArgumentException from args: " + Arrays.toString(args)); } catch (IllegalArgumentException e) { } }
/** * Asserts that for the given command, the given arguments are considered valid * on Windows, but invalid elsewhere. * * @param cmd FsCommand to check * @param args String... arguments to check */ private static void assertValidArgumentsOnWindows(FsCommand cmd, String... args) { if (Shell.WINDOWS) { cmd.run(args); } else { assertIllegalArguments(cmd, args); } } }
/** * Asserts that for the given command, the given arguments are considered * invalid. The expectation is that the command will throw * IllegalArgumentException. * * @param cmd FsCommand to check * @param args String... arguments to check */ private static void assertIllegalArguments(FsCommand cmd, String... args) { try { cmd.run(args); fail("Expected IllegalArgumentException from args: " + Arrays.toString(args)); } catch (IllegalArgumentException e) { } }
/** * Tests valid and invalid group arguments to chgrp. */ @Test public void testChgrpGroupValidity() { // This test only covers argument parsing, so override to skip processing. FsCommand chgrp = new FsShellPermissions.Chgrp() { @Override protected void processArgument(PathData item) { } }; chgrp.setConf(new Configuration()); // The following are valid (no exception expected). chgrp.run("group", "/path"); // The following are valid only on Windows. assertValidArgumentsOnWindows(chgrp, "Group With Spaces", "/path"); // The following are invalid (exception expected). assertIllegalArguments(chgrp, ":gr#oup", "/path"); assertIllegalArguments(chgrp, ":gr%oup", "/path"); }
/** * Tests valid and invalid group arguments to chgrp. */ @Test public void testChgrpGroupValidity() { // This test only covers argument parsing, so override to skip processing. FsCommand chgrp = new FsShellPermissions.Chgrp() { @Override protected void processArgument(PathData item) { } }; chgrp.setConf(new Configuration()); // The following are valid (no exception expected). chgrp.run("group", "/path"); // The following are valid only on Windows. assertValidArgumentsOnWindows(chgrp, "Group With Spaces", "/path"); // The following are invalid (exception expected). assertIllegalArguments(chgrp, ":gr#oup", "/path"); assertIllegalArguments(chgrp, ":gr%oup", "/path"); }