ComparisonModeTest.java 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package de.jplag.cli;
  2. import static com.github.stefanbirkner.systemlambda.SystemLambda.catchSystemExit;
  3. import static org.junit.jupiter.api.Assertions.assertEquals;
  4. import org.junit.jupiter.api.Test;
  5. import de.jplag.CommandLineArgument;
  6. import de.jplag.options.JPlagOptions;
  7. import de.jplag.strategy.ComparisonMode;
  8. class ComparisonModeTest extends CommandLineInterfaceTest {
  9. @Test
  10. void testDefaultMode() {
  11. buildOptionsFromCLI(CURRENT_DIRECTORY);
  12. assertEquals(JPlagOptions.DEFAULT_COMPARISON_MODE, options.comparisonMode());
  13. }
  14. @Test
  15. void testInvalidMode() throws Exception {
  16. String argument = buildArgument(CommandLineArgument.COMPARISON_MODE, "Test'); DROP TABLE STUDENTS; --");
  17. int statusCode = catchSystemExit(() -> buildOptionsFromCLI(argument, CURRENT_DIRECTORY));
  18. assertEquals(1, statusCode);
  19. }
  20. @Test
  21. void testNormalMode() {
  22. ComparisonMode mode = ComparisonMode.NORMAL;
  23. String argument = buildArgument(CommandLineArgument.COMPARISON_MODE, mode.getName());
  24. buildOptionsFromCLI(argument, CURRENT_DIRECTORY);
  25. assertEquals(mode, options.comparisonMode());
  26. }
  27. @Test
  28. void testParallelMode() {
  29. ComparisonMode mode = ComparisonMode.PARALLEL;
  30. String argument = buildArgument(CommandLineArgument.COMPARISON_MODE, mode.getName());
  31. buildOptionsFromCLI(argument, CURRENT_DIRECTORY);
  32. assertEquals(mode, options.comparisonMode());
  33. }
  34. }