@Test public void testDefaultMultiThreadConfiguration() { final String name = "MyConfig"; final DefaultConfiguration config = new DefaultConfiguration(name); final ThreadModeSettings singleThreadMode = ThreadModeSettings.SINGLE_THREAD_MODE_INSTANCE; assertEquals("Invalid thread mode", singleThreadMode, config.getThreadModeSettings()); }
@Test public void testMultiThreadConfiguration() { final String name = "MyConfig"; final ThreadModeSettings multiThreadMode = new ThreadModeSettings(4, 2); final DefaultConfiguration config = new DefaultConfiguration(name, multiThreadMode); assertEquals("Invalid thread mode", multiThreadMode, config.getThreadModeSettings()); }
@Test public void testCheckerThreadsNumber() throws Exception { TestRootModuleChecker.reset(); exit.checkAssertionAfterwards(() -> { assertEquals("Unexpected output log", "", systemOut.getLog()); assertEquals("Unexpected system error log", "", systemErr.getLog()); assertTrue("Invalid checker state", TestRootModuleChecker.isProcessed()); final DefaultConfiguration config = (DefaultConfiguration) TestRootModuleChecker.getConfig(); final ThreadModeSettings multiThreadModeSettings = config.getThreadModeSettings(); assertEquals("Invalid checker thread number", 4, multiThreadModeSettings.getCheckerThreadsNumber()); assertEquals("Invalid checker thread number", 1, multiThreadModeSettings.getTreeWalkerThreadsNumber()); }); Main.main("-C", "4", "-c", getPath("InputMainConfig-custom-root-module.xml"), getPath("InputMain.java")); }
@Test public void testTreeWalkerThreadsNumber() throws Exception { TestRootModuleChecker.reset(); exit.checkAssertionAfterwards(() -> { assertEquals("Unexpected output log", "", systemOut.getLog()); assertEquals("Unexpected system error log", "", systemErr.getLog()); assertTrue("Invalid checker state", TestRootModuleChecker.isProcessed()); final DefaultConfiguration config = (DefaultConfiguration) TestRootModuleChecker.getConfig(); final ThreadModeSettings multiThreadModeSettings = config.getThreadModeSettings(); assertEquals("Invalid checker thread number", 1, multiThreadModeSettings.getCheckerThreadsNumber()); assertEquals("Invalid checker thread number", 4, multiThreadModeSettings.getTreeWalkerThreadsNumber()); }); Main.main("-W", "4", "-c", getPath("InputMainConfig-custom-root-module.xml"), getPath("InputMain.java")); }
@Test public void testModuleNameInSingleThreadMode() throws Exception { TestRootModuleChecker.reset(); exit.checkAssertionAfterwards(() -> { assertEquals("Unexpected output log", "", systemOut.getLog()); assertEquals("Unexpected system error log", "", systemErr.getLog()); assertTrue("Invalid checker state", TestRootModuleChecker.isProcessed()); final DefaultConfiguration config = (DefaultConfiguration) TestRootModuleChecker.getConfig(); final ThreadModeSettings multiThreadModeSettings = config.getThreadModeSettings(); assertEquals("Invalid checker thread number", 1, multiThreadModeSettings.getCheckerThreadsNumber()); assertEquals("Invalid checker thread number", 1, multiThreadModeSettings.getTreeWalkerThreadsNumber()); final Configuration checkerConfiguration = config .getChildren()[0]; assertEquals("Invalid checker name", "Checker", checkerConfiguration.getName()); final Configuration treeWalkerConfig = checkerConfiguration.getChildren()[0]; assertEquals("Invalid checker children name", "TreeWalker", treeWalkerConfig.getName()); }); Main.main("-C", "1", "-W", "1", "-c", getPath("InputMainConfig-multi-thread-mode.xml"), getPath("InputMain.java")); }