diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-04-22 13:29:02 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-04-22 13:30:13 -0700 |
commit | b39ceb27794272100154b88b6d50195d1dca0431 (patch) | |
tree | 8ad4ea50075be99e874c63c95067a3ce410d4a64 /cpp/050scenario | |
parent | 8c9ffa039f2f623cf61f263d487c1f4a919bea65 (diff) | |
download | mu-b39ceb27794272100154b88b6d50195d1dca0431.tar.gz |
1133 - more reorg of commandline parsing
1. Drop the ability to run just some C++ tests. It's a lousy interface to use line numbers, we can't selectively run mu tests, we haven't used it in a while because our tests run plenty fast, and it's complicating other parts, like Next_recipe_number and test space handling. 2. Create a new layer right up top to show the usage message and all the different forms that are possible. Good for documentation until we come up with a way to put the different forms in their own layers. At least it's out of the test layer now. 3. Strengthen the assertion that no recipes exist in test space before we start running any sorts of tests. Earlier it was possible for files loaded explicitly to overflow into test space because we were asserting before load, not after. Now we check if we need to run tests, load all files, then make the assertion, run tests, and exit if necessary. Now we don't need to mess with commandline args at all in layer 50. That's a sign that we're on the right track.
Diffstat (limited to 'cpp/050scenario')
-rw-r--r-- | cpp/050scenario | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/cpp/050scenario b/cpp/050scenario index c863b1b4..9b5b74bb 100644 --- a/cpp/050scenario +++ b/cpp/050scenario @@ -183,6 +183,8 @@ void handle_type(const string& lhs, istream& in, scenario& out) { raise << "scenario doesn't know how to parse memory expectation on " << lhs << '\n'; } +//:: Helpers + void slurp_until_matching_bracket(istream& in, ostream& out) { int brace_depth = 1; // just scanned '[' char c; @@ -194,23 +196,6 @@ void slurp_until_matching_bracket(istream& in, ostream& out) { } } -//:: Run tests for loaded mu files (rather than running 'main'). - -:(before "End Test Runs") -if (argc > 2 && is_equal(argv[1], "test") && file_exists(argv[2])) { - Scenarios.clear(); // ignore core.mu - for (int i = 2; i < argc; ++i) { - load(argv[i]); - } - run_mu_tests(); - cerr << '\n'; - if (Num_failures > 0) - cerr << Num_failures << " failure" - << (Num_failures > 1 ? "s" : "") - << '\n'; - return 0; -} - :(code) // for tests void parse_scenario(const string& s) { |