Login
Fix a few miscellaneous self violations
[gknop/Perl-Critic.git] / t / ValuesAndExpressions / ProhibitMixedBooleanOperators.run
1 ##############################################################################
2 #      $URL$
3 #     $Date$
4 #   $Author$
5 # $Revision$
6 ##############################################################################
7
8
9 ## name High-precedence passing
10 ## failures 0
11 ## cut
12
13 next if ! $finished || $foo < $bar;
14 if( $foo && !$bar || $baz){ do_something() }
15 this() && !that() || the_other(); 
16
17 #-----------------------------------------------------------------------------
18
19 ## name Low-precedence passing
20 ## failures 0
21 ## cut
22
23 next if not $finished or $foo < $bar;
24 if( $foo and not $bar or $baz){ do_something() }
25 this() and not that() or the_other(); 
26
27 #-----------------------------------------------------------------------------
28
29 ## name Basic failure
30 ## failures 3
31 ## cut
32
33 next if not $finished || $foo < $bar;
34 if( $foo && not $bar or $baz){ do_something() }
35 this() and ! that() or the_other(); 
36
37 #-----------------------------------------------------------------------------
38
39 ## name High-precedence with low precedence self-equals
40 ## failures 0
41 ## TODO this is a failing test
42 ## cut
43
44 $sub ||= sub {
45    return 1 and 2;
46 };
47
48 #-----------------------------------------------------------------------------
49
50 ## name Mixed booleans in same statement, but different expressions
51 ## TODO Not sure how to separate expressions right now
52 ## failures 0
53 ## cut
54
55 # See http://rt.cpan.org/Ticket/Display.html?id=27637
56 ok( ! 1, 'values are URLs' ) or diag 'never happens';
57
58 ## name Mixed booleans in code blocks
59 ## failures 0
60 ## TODO Statements inside of code blocks are not distinguished
61 ## cut
62
63 eval {
64     if (1 || 2) {
65         return not 3;
66     }
67 };
68
69 ##############################################################################
70 # Local Variables:
71 #   mode: cperl
72 #   cperl-indent-level: 4
73 #   fill-column: 78
74 #   indent-tabs-mode: nil
75 #   c-indentation-style: bsd
76 # End:
77 # ex: set ts=8 sts=4 sw=4 tw=78 ft=perl expandtab :