about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--050scenario.cc13
-rw-r--r--tangle/030tangle.cc2
2 files changed, 7 insertions, 8 deletions
diff --git a/050scenario.cc b/050scenario.cc
index a87c1b26..8200d702 100644
--- a/050scenario.cc
+++ b/050scenario.cc
@@ -116,13 +116,12 @@ for (long long int i = 0; i < SIZE(Scenarios); ++i) {
 }
 
 //: Convenience: run a single named scenario.
-:(before "Loading Commandline Files")
-if (argc == 2 && Run_tests) {
-  for (long long int i = 0; i < SIZE(Scenarios); ++i) {
-    if (Scenarios.at(i).name == argv[1]) {
-      run_mu_scenario(Scenarios.at(i));
-      return 0;
-    }
+:(after "Test Runs")
+for (long long int i = 0; i < SIZE(Scenarios); ++i) {
+  if (Scenarios.at(i).name == argv[argc-1]) {
+    run_mu_scenario(Scenarios.at(i));
+    if (Passed) cerr << ".\n";
+    return 0;
   }
 }
 
diff --git a/tangle/030tangle.cc b/tangle/030tangle.cc
index 57a10a9e..618d7fa1 100644
--- a/tangle/030tangle.cc
+++ b/tangle/030tangle.cc
@@ -197,7 +197,7 @@ void process_next_hunk(istream& in, const string& directive, const string& filen
     return;
   }
 
-  raise << "unknown directive " << cmd << '\n';
+  raise << "unknown directive " << cmd << '\n' << die();
 }
 
 list<Line>::iterator locate_target(list<Line>& out, istream& directive_stream) {