|
1 | 1 | #!/usr/bin/env bats |
2 | 2 | load bats-extra |
3 | 3 |
|
4 | | -# local version: 1.2.1.0 |
| 4 | +# generated on 2026-06-29T06:19:33+00:00 |
| 5 | +# local version: 2.0.0.0 |
5 | 6 |
|
6 | | -# Test returns true if the triangle is equilateral |
7 | | - |
8 | | -@test "all sides are equal, equilateral" { |
9 | | - #[[ $BATS_RUN_SKIPPED == "true" ]] || skip |
| 7 | +@test "equilateral triangle: all sides are equal" { |
| 8 | + # [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
10 | 9 | run bash triangle.sh equilateral 2 2 2 |
11 | 10 | assert_success |
12 | 11 | assert_output "true" |
13 | 12 | } |
14 | 13 |
|
15 | | -@test "any side is unequal" { |
| 14 | +@test "equilateral triangle: any side is unequal" { |
16 | 15 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
17 | 16 | run bash triangle.sh equilateral 2 3 2 |
18 | 17 | assert_success |
19 | 18 | assert_output "false" |
20 | 19 | } |
21 | 20 |
|
22 | | -@test "no sides are equal, equilateral" { |
| 21 | +@test "equilateral triangle: no sides are equal" { |
23 | 22 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
24 | 23 | run bash triangle.sh equilateral 5 4 6 |
25 | 24 | assert_success |
26 | 25 | assert_output "false" |
27 | 26 | } |
28 | 27 |
|
29 | | -@test "all zero sides is not a triangle" { |
| 28 | +@test "equilateral triangle: all zero sides is not a triangle" { |
30 | 29 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
31 | 30 | run bash triangle.sh equilateral 0 0 0 |
32 | 31 | assert_success |
33 | 32 | assert_output "false" |
34 | 33 | } |
35 | 34 |
|
36 | | -# Bonus: deal with floats |
37 | | - |
38 | | -@test "sides may be floats, equilateral" { |
| 35 | +@test "equilateral triangle: sides may be floats" { |
39 | 36 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
40 | 37 | run bash triangle.sh equilateral 0.5 0.5 0.5 |
41 | 38 | assert_success |
42 | 39 | assert_output "true" |
43 | 40 | } |
44 | 41 |
|
45 | | -# Test returns true if the triangle is isosceles |
46 | | - |
47 | | -@test "last two sides are equal" { |
| 42 | +@test "isosceles triangle: last two sides are equal" { |
48 | 43 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
49 | 44 | run bash triangle.sh isosceles 3 4 4 |
50 | 45 | assert_success |
51 | 46 | assert_output "true" |
52 | 47 | } |
53 | 48 |
|
54 | | -@test "first two sides are equal" { |
| 49 | +@test "isosceles triangle: first two sides are equal" { |
55 | 50 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
56 | 51 | run bash triangle.sh isosceles 4 4 3 |
57 | 52 | assert_success |
58 | 53 | assert_output "true" |
59 | 54 | } |
60 | 55 |
|
61 | | -@test "first and last sides are equal" { |
| 56 | +@test "isosceles triangle: first and last sides are equal" { |
62 | 57 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
63 | 58 | run bash triangle.sh isosceles 4 3 4 |
64 | 59 | assert_success |
65 | 60 | assert_output "true" |
66 | 61 | } |
67 | 62 |
|
68 | | -@test "equilateral triangles are also isosceles" { |
| 63 | +@test "isosceles triangle: equilateral triangles are also isosceles" { |
69 | 64 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
70 | 65 | run bash triangle.sh isosceles 4 4 4 |
71 | 66 | assert_success |
72 | 67 | assert_output "true" |
73 | 68 | } |
74 | 69 |
|
75 | | -@test "no sides are equal, isosceles" { |
| 70 | +@test "isosceles triangle: no sides are equal" { |
76 | 71 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
77 | 72 | run bash triangle.sh isosceles 2 3 4 |
78 | 73 | assert_success |
79 | 74 | assert_output "false" |
80 | 75 | } |
81 | 76 |
|
82 | | -@test "first triangle inequality violation" { |
| 77 | +@test "isosceles triangle: first triangle inequality violation" { |
83 | 78 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
84 | 79 | run bash triangle.sh isosceles 1 1 3 |
85 | 80 | assert_success |
86 | 81 | assert_output "false" |
87 | 82 | } |
88 | 83 |
|
89 | | -@test "second triangle inequality violation" { |
| 84 | +@test "isosceles triangle: second triangle inequality violation" { |
90 | 85 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
91 | 86 | run bash triangle.sh isosceles 1 3 1 |
92 | 87 | assert_success |
93 | 88 | assert_output "false" |
94 | 89 | } |
95 | 90 |
|
96 | | -@test "third triangle inequality violation" { |
| 91 | +@test "isosceles triangle: third triangle inequality violation" { |
97 | 92 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
98 | 93 | run bash triangle.sh isosceles 3 1 1 |
99 | 94 | assert_success |
100 | 95 | assert_output "false" |
101 | 96 | } |
102 | 97 |
|
103 | | -# Bonus: deal with floats |
104 | | - |
105 | | -@test "sides may be floats, isosceles" { |
| 98 | +@test "isosceles triangle: sides may be floats" { |
106 | 99 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
107 | 100 | run bash triangle.sh isosceles 0.5 0.4 0.5 |
108 | 101 | assert_success |
109 | 102 | assert_output "true" |
110 | 103 | } |
111 | 104 |
|
112 | | -# Test returns true if the triangle is scalene |
113 | | - |
114 | | -@test "no sides are equal, scalene" { |
| 105 | +@test "scalene triangle: no sides are equal" { |
115 | 106 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
116 | 107 | run bash triangle.sh scalene 5 4 6 |
117 | 108 | assert_success |
118 | 109 | assert_output "true" |
119 | 110 | } |
120 | 111 |
|
121 | | -@test "all sides are equal, scalene" { |
| 112 | +@test "scalene triangle: all sides are equal" { |
122 | 113 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
123 | 114 | run bash triangle.sh scalene 4 4 4 |
124 | 115 | assert_success |
125 | 116 | assert_output "false" |
126 | 117 | } |
127 | 118 |
|
128 | | -@test "first and second sides are equal" { |
| 119 | +@test "scalene triangle: first and second sides are equal" { |
129 | 120 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
130 | 121 | run bash triangle.sh scalene 4 4 3 |
131 | 122 | assert_success |
132 | 123 | assert_output "false" |
133 | 124 | } |
134 | 125 |
|
135 | | -@test "first and third sides are equal" { |
| 126 | +@test "scalene triangle: first and third sides are equal" { |
136 | 127 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
137 | 128 | run bash triangle.sh scalene 3 4 3 |
138 | 129 | assert_success |
139 | 130 | assert_output "false" |
140 | 131 | } |
141 | 132 |
|
142 | | -@test "second and third sides are equal" { |
| 133 | +@test "scalene triangle: second and third sides are equal" { |
143 | 134 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
144 | 135 | run bash triangle.sh scalene 4 3 3 |
145 | 136 | assert_success |
146 | 137 | assert_output "false" |
147 | 138 | } |
148 | 139 |
|
149 | | -@test "may not violate triangle inequality" { |
| 140 | +@test "scalene triangle: may not violate triangle inequality" { |
150 | 141 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
151 | 142 | run bash triangle.sh scalene 7 3 2 |
152 | 143 | assert_success |
153 | 144 | assert_output "false" |
154 | 145 | } |
155 | 146 |
|
156 | | -# Bonus: deal with floats |
157 | | - |
158 | | -@test "sides may be floats, scalene" { |
| 147 | +@test "scalene triangle: sides may be floats" { |
159 | 148 | [[ $BATS_RUN_SKIPPED == "true" ]] || skip |
160 | 149 | run bash triangle.sh scalene 0.5 0.4 0.6 |
161 | 150 | assert_success |
|
0 commit comments