def testEstimates(self): input_tree = self.create_tree() input_file = "../../common/transient.i" input_tree.setInputFile(input_file) num_steps = TimeStepEstimate.findTimeSteps(input_tree) self.assertEqual(num_steps, 8) b = input_tree.getBlockInfo("/Executioner") b.included = False self.assertEqual(TimeStepEstimate.findTimeSteps(input_tree), 0) b.included = True p = b.getParamInfo("num_steps") p.value = "foo" self.assertEqual(TimeStepEstimate.findTimeSteps(input_tree), 0) input_file = "../../common/simple_diffusion.i" input_tree.setInputFile(input_file) num_steps = TimeStepEstimate.findTimeSteps(input_tree) self.assertEqual(num_steps, 3)
def testBasic(self): main_win, w = self.newWidget() w.ExecuteOptionsPlugin.setExecutablePath(self.test_exe) self.assertEqual(w.ExecuteRunnerPlugin.run_button.isEnabled(), True) self.assertEqual(self.exe_info.valid(), True) self.assertEqual(w.ConsoleOutputViewerPlugin.toPlainText(), "") w.ExecuteRunnerPlugin.runClicked() self.assertEqual(self.start_input_file, self.input_file) self.assertEqual(self.start_csv, True) w.ExecuteRunnerPlugin.runner.process.waitForFinished(-1) self.assertNotEqual(w.ConsoleOutputViewerPlugin.toPlainText(), "") tree = InputTree(self.exe_info) tree.setInputFile(self.test_input_file) num_steps = TimeStepEstimate.findTimeSteps(tree) w.onNumTimeStepsChanged(num_steps)
def createWidget(self, args=[], csv_enabled=False): w = ExecuteRunnerPlugin() exe_info = ExecutableInfo() exe_info.setPath(self.test_exe) tree = InputTree(exe_info) tree.setInputFile(self.test_input_file) num_steps = TimeStepEstimate.findTimeSteps(tree) w.onNumTimeStepsChanged(num_steps) self.assertEqual(w._total_steps, 8) w.needCommand.connect(lambda: self.needCommand(w, args, csv_enabled)) w.needInputFile.connect(self.needInputFile) w.outputAdded.connect(self.outputAdded) w.runProgress.connect(self.runProgress) w.startJob.connect(self.startJob) w.setEnabled(True) return w
def testOptions(self): main_win, w = self.newWidget() w.ExecuteOptionsPlugin.setExecutablePath(self.test_exe) self.assertEqual(w.ExecuteRunnerPlugin.run_button.isEnabled(), True) self.assertEqual(self.exe_info.valid(), True) self.assertEqual(w.ConsoleOutputViewerPlugin.toPlainText(), "") QTest.mouseClick(w.ExecuteOptionsPlugin.mpi_checkbox, Qt.LeftButton) QTest.mouseClick(w.ExecuteOptionsPlugin.threads_checkbox, Qt.LeftButton) w.ExecuteRunnerPlugin.runClicked() self.assertEqual(self.start_input_file, self.input_file) self.assertEqual(self.start_csv, True) w.ExecuteRunnerPlugin.runner.process.waitForFinished(-1) output = w.ConsoleOutputViewerPlugin.toPlainText() self.assertNotEqual(output, "") m = re.search("Num Processors:\s*2", output) self.assertIsNotNone(m) m = re.search("Num Threads:\s*2", output) self.assertIsNotNone(m) tree = InputTree(self.exe_info) tree.setInputFile(self.test_input_file) num_steps = TimeStepEstimate.findTimeSteps(tree) w.onNumTimeStepsChanged(num_steps)