ClusteringTest.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package de.jplag.cli;
  2. import static org.junit.jupiter.api.Assertions.assertEquals;
  3. import org.junit.jupiter.api.Test;
  4. import de.jplag.CommandLineArgument;
  5. import de.jplag.clustering.Preprocessing;
  6. class ClusteringTest extends CommandLineInterfaceTest {
  7. private static final double EPSILON = 0.000001;
  8. @Test
  9. void parseSkipClustering() {
  10. String argument = CommandLineArgument.CLUSTER_DISABLE.flag();
  11. buildOptionsFromCLI(argument, CURRENT_DIRECTORY);
  12. assertEquals(false, options.clusteringOptions().enabled());
  13. }
  14. @Test
  15. void parseDefaultClustering() {
  16. buildOptionsFromCLI(CURRENT_DIRECTORY);
  17. assertEquals(true, options.clusteringOptions().enabled());
  18. }
  19. @Test
  20. void parsePercentilePreProcessor() {
  21. String argument = buildArgument(CommandLineArgument.CLUSTER_PREPROCESSING_PERCENTILE, Double.toString(0.5));
  22. buildOptionsFromCLI(argument, CURRENT_DIRECTORY);
  23. assertEquals(Preprocessing.PERCENTILE, options.clusteringOptions().preprocessor());
  24. assertEquals(0.5, options.clusteringOptions().preprocessorPercentile(), EPSILON);
  25. }
  26. @Test
  27. void parseCdfPreProcessor() {
  28. String argument = CommandLineArgument.CLUSTER_PREPROCESSING_CDF.flag();
  29. buildOptionsFromCLI(argument, CURRENT_DIRECTORY);
  30. assertEquals(Preprocessing.CUMULATIVE_DISTRIBUTION_FUNCTION, options.clusteringOptions().preprocessor());
  31. }
  32. @Test
  33. void parseNoPreProcessor() {
  34. String argument = CommandLineArgument.CLUSTER_PREPROCESSING_NONE.flag();
  35. buildOptionsFromCLI(argument, CURRENT_DIRECTORY);
  36. assertEquals(Preprocessing.NONE, options.clusteringOptions().preprocessor());
  37. }
  38. }