Add a flag to run ignored tests. Issue #428
This commit is contained in:
parent
81acf69f97
commit
20e94de392
3 changed files with 119 additions and 22 deletions
|
|
@ -1,4 +1,8 @@
|
|||
import std::test;
|
||||
import std::str;
|
||||
import std::option;
|
||||
import std::either;
|
||||
import std::ivec;
|
||||
|
||||
#[test]
|
||||
fn do_not_run_ignored_tests() {
|
||||
|
|
@ -26,6 +30,42 @@ fn ignored_tests_result_in_ignored() {
|
|||
assert res == test::tr_ignored;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn first_free_arg_should_be_a_filter() {
|
||||
auto args = ~["progname", "filter"];
|
||||
check ivec::is_not_empty(args);
|
||||
auto opts = alt test::parse_opts(args) { either::left(?o) { o } };
|
||||
assert str::eq("filter", option::get(opts.filter));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn parse_ignored_flag() {
|
||||
auto args = ~["progname", "filter", "--ignored"];
|
||||
check ivec::is_not_empty(args);
|
||||
auto opts = alt test::parse_opts(args) { either::left(?o) { o } };
|
||||
assert opts.run_ignored;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn filter_for_ignored_option() {
|
||||
// When we run ignored tests the test filter should filter out all the
|
||||
// unignored tests and flip the ignore flag on the rest to false
|
||||
|
||||
auto opts = rec(filter = option::none,
|
||||
run_ignored = true);
|
||||
auto tests = ~[rec(name = "1",
|
||||
fn = fn() {},
|
||||
ignore = true),
|
||||
rec(name = "2",
|
||||
fn = fn() {},
|
||||
ignore = false)];
|
||||
auto filtered = test::filter_tests(opts, tests);
|
||||
|
||||
assert ivec::len(filtered) == 1u;
|
||||
assert filtered.(0).name == "1";
|
||||
assert filtered.(0).ignore == false;
|
||||
}
|
||||
|
||||
// Local Variables:
|
||||
// mode: rust;
|
||||
// fill-column: 78;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue