File: 12-nested-flow-skip.t

package info (click to toggle)
libtest-www-declare-perl 0.02-7
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 228 kB
  • sloc: perl: 1,652; makefile: 9
file content (56 lines) | stat: -rw-r--r-- 1,888 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!perl
use Test::WWW::Declare::Tester tests => 21;
use warnings;
use strict;

my @results = run_tests(
    sub {
        session "check logins" => run {
            flow "visit index good and formy" => check {
                flow "visit index" => check {
                    get "http://localhost:$PORT/";
                    title should equal 'INDEX';
                };

                flow "visit good" => check {
                    SKIP "we have no 'AAHHH!!!' yet";
                    click href qr/AAHHH!!!/;
                    title should equal 'GOOD';
                };

                flow "visit formy" => check {
                    get "http://localhost:$PORT/formy";
                    title should equal 'FORMY';
                };
            };
        };
    }
);

shift @results; # Test::Tester gives 1-based arrays
is(@results, 4, "had four tests");
ok($results[0]{ok}, "1st test passed");
ok($results[1]{ok}, "2nd test passed");
ok($results[2]{ok}, "3rd test passed");
ok($results[3]{ok}, "4th test passed");

is($results[0]{name}, "visit index");
is($results[1]{name}, "", "skipped tests are nameless");
is($results[2]{name}, "visit formy");
is($results[3]{name}, "visit index good and formy");

is($results[0]{type}, "", "no type for normal tests");
is($results[1]{type}, "skip", "type set to skip");
is($results[2]{type}, "", "no type for normal tests");
is($results[3]{type}, "", "no type for normal tests");

is($results[0]{reason}, "", "skip doesn't propagate");
like($results[1]{reason}, qr/^we have no 'AAHHH!!!' yet/, "correct skip reason");
is($results[2]{reason}, "", "skip doesn't propagate");
is($results[3]{reason}, "", "skip doesn't propagate");

is($results[0]{diag}, '', 'no errors/warnings');
is($results[1]{diag}, '', 'no errors/warnings');
is($results[2]{diag}, '', 'no errors/warnings');
is($results[3]{diag}, '', 'no errors/warnings');