diff --git a/Framework/API/src/ScriptBuilder.cpp b/Framework/API/src/ScriptBuilder.cpp index 292b99877dc557559a610779322a20a3e09041d6..4b021582bd4b856c4c5294f8b27588fca1042c9e 100644 --- a/Framework/API/src/ScriptBuilder.cpp +++ b/Framework/API/src/ScriptBuilder.cpp @@ -222,8 +222,8 @@ ScriptBuilder::buildAlgorithmString(const AlgorithmHistory &algHistory) { } std::string historyEntry = name + "(" + propStr + ")"; - historyEntry.erase( - boost::remove_if(historyEntry, boost::is_any_of("\n\r")), historyEntry.end()); + historyEntry.erase(boost::remove_if(historyEntry, boost::is_any_of("\n\r")), + historyEntry.end()); return historyEntry; } diff --git a/Framework/API/test/ScriptBuilderTest.h b/Framework/API/test/ScriptBuilderTest.h index 41e8d9c7f05ff42e36c8d7f722ecb96a32986a27..db06f122bdc8bb60bcd8e7e7030bc299ad2260a3 100644 --- a/Framework/API/test/ScriptBuilderTest.h +++ b/Framework/API/test/ScriptBuilderTest.h @@ -85,37 +85,36 @@ class ScriptBuilderTest : public CxxTest::TestSuite { } }; - class NewlineAlgorithm : public Algorithm { public: - NewlineAlgorithm() : Algorithm() {} - ~NewlineAlgorithm() override {} - const std::string name() const override { return "Foo\n\rBar"; } - const std::string summary() const override { return "Test"; } - int version() const override { return 1; } - const std::string category() const override { return "Cat;Leopard;Mink"; } - - void afterPropertySet(const std::string &name) override { - if (name == "InputWorkspace") - declareProperty("DynamicInputProperty", ""); - } - - void init() override { - declareProperty(make_unique<WorkspaceProperty<MatrixWorkspace>>( - "InputWorkspace", "", Direction::Input)); - declareProperty(make_unique<WorkspaceProperty<MatrixWorkspace>>( - "OutputWorkspace", "", Direction::Output)); - declareProperty("PropertyA", "Hello"); - declareProperty("PropertyB", "World"); - } - void exec() override { - declareProperty("DynamicProperty1", "value", Direction::Output); - setPropertyValue("DynamicProperty1", "outputValue"); - - boost::shared_ptr<MatrixWorkspace> output = - boost::make_shared<WorkspaceTester>(); - setProperty("OutputWorkspace", output); - } + NewlineAlgorithm() : Algorithm() {} + ~NewlineAlgorithm() override {} + const std::string name() const override { return "Foo\n\rBar"; } + const std::string summary() const override { return "Test"; } + int version() const override { return 1; } + const std::string category() const override { return "Cat;Leopard;Mink"; } + + void afterPropertySet(const std::string &name) override { + if (name == "InputWorkspace") + declareProperty("DynamicInputProperty", ""); + } + + void init() override { + declareProperty(make_unique<WorkspaceProperty<MatrixWorkspace>>( + "InputWorkspace", "", Direction::Input)); + declareProperty(make_unique<WorkspaceProperty<MatrixWorkspace>>( + "OutputWorkspace", "", Direction::Output)); + declareProperty("PropertyA", "Hello"); + declareProperty("PropertyB", "World"); + } + void exec() override { + declareProperty("DynamicProperty1", "value", Direction::Output); + setPropertyValue("DynamicProperty1", "outputValue"); + + boost::shared_ptr<MatrixWorkspace> output = + boost::make_shared<WorkspaceTester>(); + setProperty("OutputWorkspace", output); + } }; // middle layer algorithm executed by a top level algorithm @@ -238,7 +237,7 @@ public: Mantid::API::AlgorithmFactory::Instance().subscribe<NestedAlgorithm>(); Mantid::API::AlgorithmFactory::Instance().subscribe<BasicAlgorithm>(); Mantid::API::AlgorithmFactory::Instance().subscribe<SubAlgorithm>(); - Mantid::API::AlgorithmFactory::Instance().subscribe<NewlineAlgorithm>(); + Mantid::API::AlgorithmFactory::Instance().subscribe<NewlineAlgorithm>(); Mantid::API::AlgorithmFactory::Instance() .subscribe<AlgorithmWithDynamicProperty>(); } @@ -251,7 +250,7 @@ public: Mantid::API::AlgorithmFactory::Instance().unsubscribe("SubAlgorithm", 1); Mantid::API::AlgorithmFactory::Instance().unsubscribe( "AlgorithmWithDynamicProperty", 1); - Mantid::API::AlgorithmFactory::Instance().unsubscribe("Foo\n\rBar", 1 ); + Mantid::API::AlgorithmFactory::Instance().unsubscribe("Foo\n\rBar", 1); } void test_Build_Simple() { @@ -290,38 +289,39 @@ public: } void test_newline_chars_removed() { - // Check that any newline chars are removed - std::string result[] = {"FooBar(InputWorkspace='test_input_workspace'," - " OutputWorkspace='test_output_workspace')", ""}; - - boost::shared_ptr<WorkspaceTester> input = - boost::make_shared<WorkspaceTester>(); - AnalysisDataService::Instance().addOrReplace("test_input_workspace", input); - - auto alg = AlgorithmFactory::Instance().create("Foo\n\rBar", 1); - alg->initialize(); - alg->setRethrows(true); - alg->setProperty("InputWorkspace", input); - alg->setPropertyValue("OutputWorkspace", "test_output_workspace"); - alg->execute(); - - auto ws = AnalysisDataService::Instance().retrieveWS<MatrixWorkspace>( - "test_output_workspace"); - auto wsHist = ws->getHistory(); - - ScriptBuilder builder(wsHist.createView()); - std::string scriptText = builder.build(); - - std::vector<std::string> scriptLines; - boost::split(scriptLines, scriptText, boost::is_any_of("\n")); - - int i = 0; - for (auto it = scriptLines.begin(); it != scriptLines.end(); ++it, ++i) { - TS_ASSERT_EQUALS(*it, result[i]) - } - - AnalysisDataService::Instance().remove("test_output_workspace"); - AnalysisDataService::Instance().remove("test_input_workspace"); + // Check that any newline chars are removed + std::string result[] = {"FooBar(InputWorkspace='test_input_workspace'," + " OutputWorkspace='test_output_workspace')", + ""}; + + boost::shared_ptr<WorkspaceTester> input = + boost::make_shared<WorkspaceTester>(); + AnalysisDataService::Instance().addOrReplace("test_input_workspace", input); + + auto alg = AlgorithmFactory::Instance().create("Foo\n\rBar", 1); + alg->initialize(); + alg->setRethrows(true); + alg->setProperty("InputWorkspace", input); + alg->setPropertyValue("OutputWorkspace", "test_output_workspace"); + alg->execute(); + + auto ws = AnalysisDataService::Instance().retrieveWS<MatrixWorkspace>( + "test_output_workspace"); + auto wsHist = ws->getHistory(); + + ScriptBuilder builder(wsHist.createView()); + std::string scriptText = builder.build(); + + std::vector<std::string> scriptLines; + boost::split(scriptLines, scriptText, boost::is_any_of("\n")); + + int i = 0; + for (auto it = scriptLines.begin(); it != scriptLines.end(); ++it, ++i) { + TS_ASSERT_EQUALS(*it, result[i]) + } + + AnalysisDataService::Instance().remove("test_output_workspace"); + AnalysisDataService::Instance().remove("test_input_workspace"); } void test_Build_Simple_Timestamped() {