📄 clutiltestcase.java
字号:
assertEquals(((CLOption) clOptions.get(7)).getDescriptor().getId(), 0);
}
public void testDuplicateOptions() {
// "-Dstupid=idiot","are","--all","--all","here"
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { DEFINE, ALL, CLEAR1 };
final CLArgsParser parser = new CLArgsParser(ARGLIST3, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(size, 5);
assertEquals(((CLOption) clOptions.get(0)).getDescriptor().getId(), DEFINE_OPT);
assertEquals(((CLOption) clOptions.get(1)).getDescriptor().getId(), 0);
assertEquals(((CLOption) clOptions.get(2)).getDescriptor().getId(), ALL_OPT);
assertEquals(((CLOption) clOptions.get(3)).getDescriptor().getId(), ALL_OPT);
assertEquals(((CLOption) clOptions.get(4)).getDescriptor().getId(), 0);
}
public void testIncompatableOptions() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { DEFINE, ALL, CLEAR1, BLEE };
final CLArgsParser parser = new CLArgsParser(ARGLIST4, options);
assertNotNull(parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(size, 5);
assertEquals(((CLOption) clOptions.get(0)).getDescriptor().getId(), DEFINE_OPT);
assertEquals(((CLOption) clOptions.get(1)).getDescriptor().getId(), 0);
assertEquals(((CLOption) clOptions.get(2)).getDescriptor().getId(), ALL_OPT);
assertEquals(((CLOption) clOptions.get(3)).getDescriptor().getId(), BLEE_OPT);
assertEquals(((CLOption) clOptions.get(4)).getDescriptor().getId(), 0);
}
public void testSingleArg() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(ARGLIST5, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(size, 1);
assertEquals(((CLOption) clOptions.get(0)).getDescriptor().getId(), FILE_OPT);
assertEquals(((CLOption) clOptions.get(0)).getArgument(), "myfile.txt");
}
public void testSingleArg2() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-f-=,=-" } // Check
// delimiters
// are
// allowed
, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("-=,=-", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg3() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "--file=-=,-" } // Check
// delimiters
// are
// allowed
, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("-=,-", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg4() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "--file", "myfile.txt" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("myfile.txt", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg5() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-f", "myfile.txt" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("myfile.txt", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg6() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-f", "-=-" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("-=-", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg7() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "--file=-=-" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("-=-", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg8() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "--file", "-=-" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("-=-", ((CLOption) clOptions.get(0)).getArgument());
}
public void testSingleArg9() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "--file", "-=-" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(FILE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals("-=-", ((CLOption) clOptions.get(0)).getArgument());
}
public void testCombinedArgs1() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { BLEE, TAINT };
final CLArgsParser parser = new CLArgsParser(new String[] { "-bT", "rest" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(3, size);
assertEquals(BLEE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals(TAINT_OPT, ((CLOption) clOptions.get(1)).getDescriptor().getId());
assertEquals(0, ((CLOption) clOptions.get(2)).getDescriptor().getId());
assertEquals("rest", ((CLOption) clOptions.get(2)).getArgument());
}
public void testCombinedArgs2() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { BLEE, TAINT, FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-bT", "-fa" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(3, size);
assertEquals(BLEE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals(TAINT_OPT, ((CLOption) clOptions.get(1)).getDescriptor().getId());
assertEquals(FILE_OPT, ((CLOption) clOptions.get(2)).getDescriptor().getId());
assertEquals("a", ((CLOption) clOptions.get(2)).getArgument());
}
public void testCombinedArgs3() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { BLEE, TAINT, FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-bT", "--", "-fa" }// Should
// not
// detect
// trailing
// option
, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(3, size);
assertEquals(BLEE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals(TAINT_OPT, ((CLOption) clOptions.get(1)).getDescriptor().getId());
assertEquals(0, ((CLOption) clOptions.get(2)).getDescriptor().getId());
assertEquals("-fa", ((CLOption) clOptions.get(2)).getArgument());
}
public void testCombinedArgs4() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { BLEE, TAINT, FILE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-bT", "rest", "-fa" } // should
// detect
// trailing
// option
, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(4, size);
assertEquals(BLEE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
assertEquals(TAINT_OPT, ((CLOption) clOptions.get(1)).getDescriptor().getId());
assertEquals(0, ((CLOption) clOptions.get(2)).getDescriptor().getId());
assertEquals("rest", ((CLOption) clOptions.get(2)).getArgument());
assertEquals(FILE_OPT, ((CLOption) clOptions.get(3)).getDescriptor().getId());
assertEquals("a", ((CLOption) clOptions.get(3)).getArgument());
}
public void test2ArgsParse() {
// "-Dstupid=idiot","are","--all","here"
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { DEFINE, ALL, CLEAR1, CASE_CHECK };
final CLArgsParser parser = new CLArgsParser(ARGLIST2, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(size, 5);
assertEquals(((CLOption) clOptions.get(0)).getDescriptor().getId(), DEFINE_OPT);
assertEquals(((CLOption) clOptions.get(1)).getDescriptor().getId(), 0);
assertEquals(((CLOption) clOptions.get(2)).getDescriptor().getId(), ALL_OPT);
assertEquals(((CLOption) clOptions.get(3)).getDescriptor().getId(), 0);
assertEquals(((CLOption) clOptions.get(4)).getDescriptor().getId(), CASE_CHECK_OPT);
final CLOption option = (CLOption) clOptions.get(0);
assertEquals("stupid", option.getArgument(0));
assertEquals("idiot", option.getArgument(1));
}
public void test2ArgsParse2() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { DEFINE };
final CLArgsParser parser = new CLArgsParser(new String[] { "--define", "a-b,c=d-e,f" }, // Check
// "-"
// is
// allowed
// in
// arg2
options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(DEFINE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
final CLOption option = (CLOption) clOptions.get(0);
assertEquals("a-b,c", option.getArgument(0));
assertEquals("d-e,f", option.getArgument(1));
}
public void test2ArgsParse3() {
final CLOptionDescriptor[] options = new CLOptionDescriptor[] { DEFINE };
final CLArgsParser parser = new CLArgsParser(new String[] { "-D", "A-b,c", "G-e,f" }, options);
assertNull(parser.getErrorString(), parser.getErrorString());
final List clOptions = parser.getArguments();
final int size = clOptions.size();
assertEquals(1, size);
assertEquals(DEFINE_OPT, ((CLOption) clOptions.get(0)).getDescriptor().getId());
final CLOption option = (CLOption) clOptions.get(0);
assertEquals("A-b,c", option.getArgument(0));
assertEquals("G-e,f", option.getArgument(1));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -