Date:2012-06-01 19:52:32 (11 years 9 months ago)
Author:Werner Almesberger
Commit:6d4c71586d265e4280e497913284a30890b5d522
Message:b2/test/hierred: test for redundant conditions

Files: b2/test/hierred (1 diff)

Change Details

b2/test/hierred
1#!/bin/bash
2. ./Common
3
4###############################################################################
5
6tst "hierarchy: == 1 followed by == 2" <<EOF
7N=## {
8    1: { X=* };
9    2: { Y=* };
10};
11EOF
12
13expect <<EOF
14N=## {
15    1: { X=* }
16    2: { Y=* }
17}
18EOF
19
20#------------------------------------------------------------------------------
21
22tst "hierarchy: == 2 followed by unreachable == 2" <<EOF
23N=## {
24    2: { X=* };
25    2: { Y=* };
26};
27EOF
28
29expect <<EOF
30h:4: warning: unreachable condition
31N=## {
32    2: { X=* }
33    2: { Y=* }
34}
35EOF
36
37#------------------------------------------------------------------------------
38
39tst "hierarchy: < 2 followed by < 3" <<EOF
40N=## {
41    <2: { X=* };
42    <3: { Y=* };
43};
44EOF
45
46expect <<EOF
47N=## {
48    <2: { X=* }
49    <3: { Y=* }
50}
51EOF
52
53#------------------------------------------------------------------------------
54
55tst "hierarchy: < 3 followed by unreachable < 2" <<EOF
56N=## {
57    <3: { X=* };
58    <2: { Y=* };
59};
60EOF
61
62expect <<EOF
63h:4: warning: unreachable condition
64N=## {
65    <3: { X=* }
66    <2: { Y=* }
67}
68EOF
69
70#------------------------------------------------------------------------------
71
72tst "hierarchy: < 2 followed by <= 2" <<EOF
73N=## {
74    <2: { X=* };
75    <=2: { Y=* };
76};
77EOF
78
79expect <<EOF
80N=## {
81    <2: { X=* }
82    <=2: { Y=* }
83}
84EOF
85
86#------------------------------------------------------------------------------
87
88tst "hierarchy: <= 2 followed by unreachable < 2" <<EOF
89N=## {
90    <=2: { X=* };
91    <2: { Y=* };
92};
93EOF
94
95expect <<EOF
96h:4: warning: unreachable condition
97N=## {
98    <=2: { X=* }
99    <2: { Y=* }
100}
101EOF
102
103#------------------------------------------------------------------------------
104
105tst "hierarchy: < 3 followed by > 1" <<EOF
106N=## {
107    <3: { X=* };
108    >1: { Y=* };
109};
110EOF
111
112expect <<EOF
113N=## {
114    <3: { X=* }
115    >1: { Y=* }
116}
117EOF
118
119#------------------------------------------------------------------------------
120
121tst "hierarchy: < 3 followed by predictable but reachable > 2" <<EOF
122N=## {
123    <3: { X=* };
124    >2: { Y=* };
125};
126EOF
127
128expect <<EOF
129N=## {
130    <3: { X=* }
131    >2: { Y=* }
132}
133EOF
134
135###############################################################################

Archive Download the corresponding diff file

Branches:
master



interactive