trackler 2.2.1.66 → 2.2.1.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/problem-specifications/README.md +1 -0
- data/tracks/bash/exercises/anagram/anagram_tests.sh +16 -0
- data/tracks/bash/exercises/bob/bob_test.sh +28 -0
- data/tracks/bash/exercises/difference-of-squares/difference_of_squares_test.sh +3 -0
- data/tracks/bash/exercises/error-handling/error_handling_test.sh +5 -0
- data/tracks/bash/exercises/gigasecond/gigasecond_test.sh +10 -0
- data/tracks/bash/exercises/hamming/hamming_test.sh +15 -0
- data/tracks/bash/exercises/leap/leap_test.sh +10 -0
- data/tracks/bash/exercises/nucleotide-count/nucleotide_count_test.sh +4 -0
- data/tracks/bash/exercises/pangram/pangram_tests.sh +9 -0
- data/tracks/bash/exercises/phone-number/phone_number_tests.sh +13 -1
- data/tracks/bash/exercises/raindrops/raindrops_test.sh +16 -0
- data/tracks/bash/exercises/rna-transcription/rna_transcription_test.sh +8 -0
- data/tracks/bash/exercises/two-fer/two_fer_test.sh +3 -0
- data/tracks/bash/exercises/word-count/word_count_test.sh +9 -1
- data/tracks/c/exercises/hello-world/src/hello_world.c +0 -2
- data/tracks/c/exercises/sieve/test/test_sieve.c +13 -16
- data/tracks/erlang/config.json +4 -4
- data/tracks/fsharp/config.json +12 -0
- data/tracks/fsharp/exercises/Exercises.sln +6 -0
- data/tracks/fsharp/exercises/rotational-cipher/Example.fs +29 -0
- data/tracks/fsharp/exercises/rotational-cipher/Program.fs +1 -0
- data/tracks/fsharp/exercises/rotational-cipher/README.md +29 -0
- data/tracks/fsharp/exercises/rotational-cipher/RotationalCipher.fs +3 -0
- data/tracks/fsharp/exercises/rotational-cipher/RotationalCipher.fsproj +23 -0
- data/tracks/fsharp/exercises/rotational-cipher/RotationalCipherTest.fs +49 -0
- data/tracks/fsharp/generators/Generators.fs +3 -0
- data/tracks/go/exercises/grains/.meta/gen.go +99 -0
- data/tracks/go/exercises/grains/cases_test.go +64 -0
- data/tracks/go/exercises/grains/grains_test.go +4 -20
- data/tracks/go/exercises/space-age/space_age_test.go +3 -1
- data/tracks/java/config.json +12 -0
- data/tracks/java/exercises/beer-song/.meta/src/reference/java/BeerSong.java +4 -4
- data/tracks/java/exercises/diamond/src/main/java/DiamondPrinter.java +9 -0
- data/tracks/java/exercises/isbn-verifier/.meta/src/reference/java/IsbnVerifier.java +35 -0
- data/tracks/java/exercises/isbn-verifier/.meta/version +1 -0
- data/tracks/java/exercises/isbn-verifier/README.md +53 -0
- data/tracks/java/exercises/isbn-verifier/build.gradle +18 -0
- data/tracks/java/exercises/isbn-verifier/src/main/java/IsbnVerifier.java +7 -0
- data/tracks/java/exercises/isbn-verifier/src/test/java/IsbnVerifierTest.java +94 -0
- data/tracks/java/exercises/isogram/src/main/java/IsogramChecker.java +7 -0
- data/tracks/java/exercises/saddle-points/src/main/java/Matrix.java +13 -0
- data/tracks/java/exercises/settings.gradle +1 -0
- data/tracks/kotlin/config.json +1 -1
- data/tracks/ocaml/exercises/all-your-base/example.ml +1 -1
- data/tracks/ocaml/exercises/all-your-base/test.ml +9 -9
- data/tracks/perl6/config.json +1 -1
- data/tracks/perl6/docs/SNIPPET.txt +2 -2
- data/tracks/perl6/exercises/anagram/Anagram.pm6 +4 -1
- data/tracks/perl6/exercises/anagram/Example.pm6 +4 -15
- data/tracks/perl6/exercises/anagram/anagram.t +2 -2
- data/tracks/perl6/exercises/anagram/example.yaml +7 -15
- data/tracks/php/config.json +12 -0
- data/tracks/php/exercises/run-length-encoding/README.md +42 -0
- data/tracks/php/exercises/run-length-encoding/example.php +60 -0
- data/tracks/php/exercises/run-length-encoding/run-length-encoding.php +20 -0
- data/tracks/php/exercises/run-length-encoding/run-length-encoding_test.php +65 -0
- data/tracks/purescript/.travis.yml +1 -1
- data/tracks/purescript/bin/test.sh +9 -2
- data/tracks/python/config.json +7 -16
- data/tracks/r/exercises/hello-world/test_hello-world.R +0 -8
- data/tracks/racket/config.json +1 -1
- data/tracks/swift/config.json +12 -2
- data/tracks/swift/exercises/diamond/Package.swift +5 -0
- data/tracks/swift/exercises/diamond/README.md +64 -0
- data/tracks/swift/exercises/diamond/Sources/Diamond.swift +1 -0
- data/tracks/swift/exercises/diamond/Sources/DiamondExample.swift +30 -0
- data/tracks/swift/exercises/diamond/Tests/DiamondTests/DiamondTests.swift +98 -0
- data/tracks/swift/exercises/diamond/Tests/LinuxMain.swift +6 -0
- metadata +29 -8
- data/tracks/java/exercises/diamond/src/main/java/.keep +0 -0
- data/tracks/java/exercises/isogram/src/main/java/.keep +0 -0
- data/tracks/python/exercises/parallel-letter-frequency/README.md +0 -24
- data/tracks/python/exercises/parallel-letter-frequency/example.py +0 -56
- data/tracks/python/exercises/parallel-letter-frequency/parallel_letter_frequency.py +0 -2
- data/tracks/python/exercises/parallel-letter-frequency/parallel_letter_frequency_test.py +0 -61
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 956bc9de5fbd416f23d6f7cfeabbc4c28edcd559
|
|
4
|
+
data.tar.gz: 9c7a904426ed89d05476a3066a5110c41f694584
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bbc5d5a656753aea898eebf5caee55446ad0793cd462e43356369400c83bcfbaf0e9fbc4d990a79569b1b981b9db846a786eebde7ea77e2add4704d8c046f162
|
|
7
|
+
data.tar.gz: 4648f51dbfef1b5446d9761608a0f03a195f2026e24a507028d46ca4b2261b959c21f498faf1c8a48419392a60239f1acf924eccac42d070a453bd19fb9433a6
|
data/lib/trackler/version.rb
CHANGED
|
@@ -105,6 +105,7 @@ example, what kinds of implementation mistakes might this case help us find?
|
|
|
105
105
|
|
|
106
106
|
There are also some convention about `expected` that you must follow:
|
|
107
107
|
|
|
108
|
+
- All keys should follow the [lowerCamelCase](http://wiki.c2.com/?LowerCamelCase) convention.
|
|
108
109
|
- if the input is valid but there is no result for the input, the value at `"expected"` should be `null`.
|
|
109
110
|
- if an error is expected (because the input is invalid, or any other reason), the value at `"expected"` should be an object containing exactly one property, `"error"`, whose value is a string.
|
|
110
111
|
- The string should explain why the error would occur.
|
|
@@ -1,96 +1,112 @@
|
|
|
1
1
|
#!/usr/bin/env bats
|
|
2
2
|
|
|
3
3
|
@test "no matches", {
|
|
4
|
+
#skip
|
|
4
5
|
run bash anagram.sh "diaper" "hello world zombies pants"
|
|
5
6
|
[ "$status" -eq 0 ]
|
|
6
7
|
[ "$output" = "" ]
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
@test "detects simple anagram" {
|
|
11
|
+
skip
|
|
10
12
|
run bash anagram.sh "ant" "tan stand at"
|
|
11
13
|
[ "$status" -eq 0 ]
|
|
12
14
|
[ "$output" = "tan" ]
|
|
13
15
|
}
|
|
14
16
|
|
|
15
17
|
@test "does not detect false positives" {
|
|
18
|
+
skip
|
|
16
19
|
run bash anagram.sh "galea" "eagle"
|
|
17
20
|
|
|
18
21
|
[ "$status" -eq 0 ]
|
|
19
22
|
[ "$output" = "" ]
|
|
20
23
|
}
|
|
21
24
|
@test "detects two anagrams" {
|
|
25
|
+
skip
|
|
22
26
|
run bash anagram.sh "master" "stream pigeon maters"
|
|
23
27
|
|
|
24
28
|
[ "$status" -eq 0 ]
|
|
25
29
|
[ "$output" = "stream maters" ]
|
|
26
30
|
}
|
|
27
31
|
@test "does not detect anagram subsets" {
|
|
32
|
+
skip
|
|
28
33
|
run bash anagram.sh "good" "dog goody"
|
|
29
34
|
|
|
30
35
|
[ "$status" -eq 0 ]
|
|
31
36
|
[ "$output" = "" ]
|
|
32
37
|
}
|
|
33
38
|
@test "detects anagram" {
|
|
39
|
+
skip
|
|
34
40
|
run bash anagram.sh "listen" "enlists google inlets banana"
|
|
35
41
|
|
|
36
42
|
[ "$status" -eq 0 ]
|
|
37
43
|
[ "$output" = "inlets" ]
|
|
38
44
|
}
|
|
39
45
|
@test "detects three anagrams" {
|
|
46
|
+
skip
|
|
40
47
|
run bash anagram.sh "allergy" "gallery ballerina regally clergy largely leading"
|
|
41
48
|
|
|
42
49
|
[ "$status" -eq 0 ]
|
|
43
50
|
[ "$output" = "gallery regally largely" ]
|
|
44
51
|
}
|
|
45
52
|
@test "does not detect identical words" {
|
|
53
|
+
skip
|
|
46
54
|
run bash anagram.sh "corn" "corn dark Corn rank CORN cron park"
|
|
47
55
|
|
|
48
56
|
[ "$status" -eq 0 ]
|
|
49
57
|
[ "$output" = "cron" ]
|
|
50
58
|
}
|
|
51
59
|
@test "does not detect non-anagrams with identical checksum" {
|
|
60
|
+
skip
|
|
52
61
|
run bash anagram.sh "mass" "last"
|
|
53
62
|
|
|
54
63
|
[ "$status" -eq 0 ]
|
|
55
64
|
[ "$output" = "" ]
|
|
56
65
|
}
|
|
57
66
|
@test "detects anagrams case-insensitively" {
|
|
67
|
+
skip
|
|
58
68
|
run bash anagram.sh "Orchestra" "cashregister Carthorse radishes"
|
|
59
69
|
|
|
60
70
|
[ "$status" -eq 0 ]
|
|
61
71
|
[ "$output" = "Carthorse" ]
|
|
62
72
|
}
|
|
63
73
|
@test "detects anagrams using case-insensitive subject" {
|
|
74
|
+
skip
|
|
64
75
|
run bash anagram.sh "Orchestra" "cashregister carthorse radishes"
|
|
65
76
|
|
|
66
77
|
[ "$status" -eq 0 ]
|
|
67
78
|
[ "$output" = "carthorse" ]
|
|
68
79
|
}
|
|
69
80
|
@test "detects anagrams using case-insensitive possible matches" {
|
|
81
|
+
skip
|
|
70
82
|
run bash anagram.sh "orchestra" "cashregister Carthorse radishes"
|
|
71
83
|
|
|
72
84
|
[ "$status" -eq 0 ]
|
|
73
85
|
[ "$output" = "Carthorse" ]
|
|
74
86
|
}
|
|
75
87
|
@test "does not detect a word as its own anagram" {
|
|
88
|
+
skip
|
|
76
89
|
run bash anagram.sh "banana" "Banana"
|
|
77
90
|
|
|
78
91
|
[ "$status" -eq 0 ]
|
|
79
92
|
[ "$output" = "" ]
|
|
80
93
|
}
|
|
81
94
|
@test "does not detect a anagram if the original word is repeated" {
|
|
95
|
+
skip
|
|
82
96
|
run bash anagram.sh "go" "go Go GO"
|
|
83
97
|
|
|
84
98
|
[ "$status" -eq 0 ]
|
|
85
99
|
[ "$output" = "" ]
|
|
86
100
|
}
|
|
87
101
|
@test "anagrams must use all letters exactly once" {
|
|
102
|
+
skip
|
|
88
103
|
run bash anagram.sh "tapper" "patter"
|
|
89
104
|
|
|
90
105
|
[ "$status" -eq 0 ]
|
|
91
106
|
[ "$output" = "" ]
|
|
92
107
|
}
|
|
93
108
|
@test "capital word is not own anagram" {
|
|
109
|
+
skip
|
|
94
110
|
run bash anagram.sh "BANANA" "Banana"
|
|
95
111
|
|
|
96
112
|
[ "$status" -eq 0 ]
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env bats
|
|
2
2
|
|
|
3
3
|
@test "stating something." {
|
|
4
|
+
#skip
|
|
4
5
|
run bash bob.sh "Tom-ay-to, tom-aaaah-to."
|
|
5
6
|
|
|
6
7
|
[ "$status" -eq 0 ]
|
|
@@ -8,6 +9,7 @@
|
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
@test "shouting" {
|
|
12
|
+
skip
|
|
11
13
|
run bash bob.sh 'WATCH OUT!'
|
|
12
14
|
|
|
13
15
|
[ "$status" -eq 0 ]
|
|
@@ -15,6 +17,7 @@
|
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
@test "shouting gibberish" {
|
|
20
|
+
skip
|
|
18
21
|
run bash bob.sh 'FCECDFCAAB'
|
|
19
22
|
|
|
20
23
|
[ "$status" -eq 0 ]
|
|
@@ -23,6 +26,7 @@
|
|
|
23
26
|
|
|
24
27
|
|
|
25
28
|
@test "asking a question" {
|
|
29
|
+
skip
|
|
26
30
|
run bash bob.sh "Does this cryogenic chamber make me look fat?"
|
|
27
31
|
|
|
28
32
|
[ "$status" -eq 0 ]
|
|
@@ -30,6 +34,7 @@
|
|
|
30
34
|
}
|
|
31
35
|
|
|
32
36
|
@test "asking a numeric question" {
|
|
37
|
+
skip
|
|
33
38
|
run bash bob.sh 'You are, what, like 15?'
|
|
34
39
|
|
|
35
40
|
[ "$status" -eq 0 ]
|
|
@@ -37,6 +42,7 @@
|
|
|
37
42
|
}
|
|
38
43
|
|
|
39
44
|
@test "asking gibberish" {
|
|
45
|
+
skip
|
|
40
46
|
run bash bob.sh "fffbbcbeab?"
|
|
41
47
|
|
|
42
48
|
[ "$status" -eq 0 ]
|
|
@@ -45,6 +51,7 @@
|
|
|
45
51
|
|
|
46
52
|
|
|
47
53
|
@test "talking forcefully" {
|
|
54
|
+
skip
|
|
48
55
|
run bash bob.sh "Let's go make out behind the gym!"
|
|
49
56
|
|
|
50
57
|
[ "$status" -eq 0 ]
|
|
@@ -52,6 +59,7 @@
|
|
|
52
59
|
}
|
|
53
60
|
|
|
54
61
|
@test "using accronyms in regular speech" {
|
|
62
|
+
skip
|
|
55
63
|
run bash bob.sh "It's OK if you don't want to go to the DMV."
|
|
56
64
|
|
|
57
65
|
[ "$status" -eq 0 ]
|
|
@@ -59,6 +67,7 @@
|
|
|
59
67
|
}
|
|
60
68
|
|
|
61
69
|
@test "forceful question" {
|
|
70
|
+
skip
|
|
62
71
|
run bash bob.sh "WHAT THE HELL WERE YOU THINKING?"
|
|
63
72
|
|
|
64
73
|
[ "$status" -eq 0 ]
|
|
@@ -66,6 +75,7 @@
|
|
|
66
75
|
}
|
|
67
76
|
|
|
68
77
|
@test "shouting numbers" {
|
|
78
|
+
skip
|
|
69
79
|
run bash bob.sh "1, 2, 3 GO!"
|
|
70
80
|
|
|
71
81
|
[ "$status" -eq 0 ]
|
|
@@ -73,6 +83,7 @@
|
|
|
73
83
|
}
|
|
74
84
|
|
|
75
85
|
@test "only numbers" {
|
|
86
|
+
skip
|
|
76
87
|
run bash bob.sh "1, 2, 3"
|
|
77
88
|
|
|
78
89
|
[ "$status" -eq 0 ]
|
|
@@ -80,6 +91,7 @@
|
|
|
80
91
|
}
|
|
81
92
|
|
|
82
93
|
@test "question with only numbers" {
|
|
94
|
+
skip
|
|
83
95
|
run bash bob.sh '4?'
|
|
84
96
|
|
|
85
97
|
[ "$status" -eq 0 ]
|
|
@@ -87,6 +99,7 @@
|
|
|
87
99
|
}
|
|
88
100
|
|
|
89
101
|
@test "shouting with special characters" {
|
|
102
|
+
skip
|
|
90
103
|
run bash bob.sh 'ZOMG THE %^*@#$(*^ ZOMBIES ARE COMING!!11!!1!'
|
|
91
104
|
|
|
92
105
|
[ "$status" -eq 0 ]
|
|
@@ -94,6 +107,7 @@
|
|
|
94
107
|
}
|
|
95
108
|
|
|
96
109
|
@test "shouting with umlauts" {
|
|
110
|
+
skip
|
|
97
111
|
run bash bob.sh 'ÜMLÄÜTS!'
|
|
98
112
|
|
|
99
113
|
[ "$status" -eq 0 ]
|
|
@@ -101,6 +115,7 @@
|
|
|
101
115
|
}
|
|
102
116
|
|
|
103
117
|
@test "calmly speaking with umlauts" {
|
|
118
|
+
skip
|
|
104
119
|
run bash bob.sh 'ÜMLäÜTS!'
|
|
105
120
|
|
|
106
121
|
[ "$status" -eq 0 ]
|
|
@@ -108,6 +123,7 @@
|
|
|
108
123
|
}
|
|
109
124
|
|
|
110
125
|
@test "shouting with no exclamation mark" {
|
|
126
|
+
skip
|
|
111
127
|
run bash bob.sh 'I HATE YOU'
|
|
112
128
|
|
|
113
129
|
[ "$status" -eq 0 ]
|
|
@@ -115,6 +131,7 @@
|
|
|
115
131
|
}
|
|
116
132
|
|
|
117
133
|
@test "statement containing question mark" {
|
|
134
|
+
skip
|
|
118
135
|
run bash bob.sh 'Ending with ? means a question.'
|
|
119
136
|
|
|
120
137
|
[ "$status" -eq 0 ]
|
|
@@ -122,12 +139,14 @@
|
|
|
122
139
|
}
|
|
123
140
|
|
|
124
141
|
@test "non-letters with question" {
|
|
142
|
+
skip
|
|
125
143
|
run bash bob.sh ':) ?'
|
|
126
144
|
|
|
127
145
|
[ "$status" -eq 0 ]
|
|
128
146
|
[ "$output" = "Sure." ]
|
|
129
147
|
}
|
|
130
148
|
@test "prattling on" {
|
|
149
|
+
skip
|
|
131
150
|
run bash bob.sh 'Wait! Hang on. Are you going to be OK?'
|
|
132
151
|
|
|
133
152
|
[ "$status" -eq 0 ]
|
|
@@ -135,6 +154,7 @@
|
|
|
135
154
|
}
|
|
136
155
|
|
|
137
156
|
@test "silence" {
|
|
157
|
+
skip
|
|
138
158
|
run bash bob.sh ''
|
|
139
159
|
|
|
140
160
|
[ "$status" -eq 0 ]
|
|
@@ -142,6 +162,7 @@
|
|
|
142
162
|
}
|
|
143
163
|
|
|
144
164
|
@test "silence" {
|
|
165
|
+
skip
|
|
145
166
|
run bash bob.sh
|
|
146
167
|
|
|
147
168
|
[ "$status" -eq 0 ]
|
|
@@ -149,6 +170,7 @@
|
|
|
149
170
|
}
|
|
150
171
|
|
|
151
172
|
@test "prolonged silence" {
|
|
173
|
+
skip
|
|
152
174
|
run bash bob.sh " "
|
|
153
175
|
|
|
154
176
|
[ "$status" -eq 0 ]
|
|
@@ -156,6 +178,7 @@
|
|
|
156
178
|
}
|
|
157
179
|
|
|
158
180
|
@test "alternate silence" {
|
|
181
|
+
skip
|
|
159
182
|
run bash bob.sh " "
|
|
160
183
|
|
|
161
184
|
[ "$status" -eq 0 ]
|
|
@@ -163,6 +186,7 @@
|
|
|
163
186
|
}
|
|
164
187
|
|
|
165
188
|
@test "multiple line question" {
|
|
189
|
+
skip
|
|
166
190
|
run bash bob.sh "\nDoes this cryogenic chamber make me look fat?\nno"
|
|
167
191
|
|
|
168
192
|
[ "$status" -eq 0 ]
|
|
@@ -170,6 +194,7 @@
|
|
|
170
194
|
}
|
|
171
195
|
|
|
172
196
|
@test "starting with whitespace" {
|
|
197
|
+
skip
|
|
173
198
|
run bash bob.sh ' hmmmmmmm...'
|
|
174
199
|
|
|
175
200
|
[ "$status" -eq 0 ]
|
|
@@ -177,6 +202,7 @@
|
|
|
177
202
|
}
|
|
178
203
|
|
|
179
204
|
@test "ending with whitespace" {
|
|
205
|
+
skip
|
|
180
206
|
run bash bob.sh 'Okay if like my spacebar quite a bit? '
|
|
181
207
|
|
|
182
208
|
[ "$status" -eq 0 ]
|
|
@@ -186,6 +212,7 @@
|
|
|
186
212
|
# This is commented out because it behaves differently on linux and mac
|
|
187
213
|
# see: https://github.com/exercism/bash/pull/28
|
|
188
214
|
#@test "other whitespace" {
|
|
215
|
+
# skip
|
|
189
216
|
# run bash bob.sh "\n\r \t\u000b\u00a0\u2002"
|
|
190
217
|
#
|
|
191
218
|
# [ "$status" -eq 0 ]
|
|
@@ -194,6 +221,7 @@
|
|
|
194
221
|
|
|
195
222
|
|
|
196
223
|
@test "non-question ending with whitespace" {
|
|
224
|
+
skip
|
|
197
225
|
run bash bob.sh 'This is a statement ending with whitespace '
|
|
198
226
|
|
|
199
227
|
[ "$status" -eq 0 ]
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env bats
|
|
2
2
|
|
|
3
3
|
@test 'difference of squares 1' {
|
|
4
|
+
#skip
|
|
4
5
|
run bash difference_of_squares.sh 1
|
|
5
6
|
|
|
6
7
|
[ "$status" -eq 0 ]
|
|
@@ -8,6 +9,7 @@
|
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
@test 'difference of squares 5' {
|
|
12
|
+
skip
|
|
11
13
|
run bash difference_of_squares.sh 5
|
|
12
14
|
|
|
13
15
|
[ "$status" -eq 0 ]
|
|
@@ -15,6 +17,7 @@
|
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
@test 'difference of squares 100' {
|
|
20
|
+
skip
|
|
18
21
|
run bash difference_of_squares.sh 100
|
|
19
22
|
|
|
20
23
|
[ "$status" -eq 0 ]
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env bats
|
|
2
2
|
|
|
3
3
|
@test "correct arguments" {
|
|
4
|
+
#skip
|
|
4
5
|
run bash error_handling.sh Alice
|
|
5
6
|
|
|
6
7
|
[ "$status" -eq 0 ]
|
|
@@ -8,6 +9,7 @@
|
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
@test "one long argument" {
|
|
12
|
+
skip
|
|
11
13
|
run bash error_handling.sh "Alice and Bob"
|
|
12
14
|
|
|
13
15
|
[ "$status" -eq 0 ]
|
|
@@ -15,17 +17,20 @@
|
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
@test "incorrect arguments" {
|
|
20
|
+
skip
|
|
18
21
|
run bash error_handling.sh Alice Bob
|
|
19
22
|
|
|
20
23
|
[ "$status" -ne 0 ]
|
|
21
24
|
}
|
|
22
25
|
|
|
23
26
|
@test "use errexit" {
|
|
27
|
+
skip
|
|
24
28
|
source error_handling.sh
|
|
25
29
|
[ echo $SHELLOPTS | grep -q 'errexit' ]
|
|
26
30
|
}
|
|
27
31
|
|
|
28
32
|
@test "use nounset" {
|
|
33
|
+
skip
|
|
29
34
|
source error_handling.sh
|
|
30
35
|
[ echo $SHELLOPTS | grep -q 'nounset' ]
|
|
31
36
|
}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env bats
|
|
2
2
|
|
|
3
3
|
@test 'April 25th, 2011' {
|
|
4
|
+
# this is used to skip the test
|
|
5
|
+
# normally, we skip every test except for the first one
|
|
6
|
+
# (the first one is always commented out)
|
|
7
|
+
# this allows for a person to focus on solving a test at a time
|
|
8
|
+
# you can comment out or delete the `skip` to run the test when ready
|
|
9
|
+
#skip
|
|
4
10
|
run bash gigasecond.sh '2011-04-25Z'
|
|
5
11
|
|
|
6
12
|
[ "$status" -eq 0 ]
|
|
@@ -8,6 +14,7 @@
|
|
|
8
14
|
}
|
|
9
15
|
|
|
10
16
|
@test 'June 13th, 1977' {
|
|
17
|
+
skip
|
|
11
18
|
run bash gigasecond.sh '1977-06-13Z'
|
|
12
19
|
|
|
13
20
|
[ "$status" -eq 0 ]
|
|
@@ -15,6 +22,7 @@
|
|
|
15
22
|
}
|
|
16
23
|
|
|
17
24
|
@test 'July 19th, 1959' {
|
|
25
|
+
skip
|
|
18
26
|
run bash gigasecond.sh '1959-07-19Z'
|
|
19
27
|
|
|
20
28
|
[ "$status" -eq 0 ]
|
|
@@ -22,6 +30,7 @@
|
|
|
22
30
|
}
|
|
23
31
|
|
|
24
32
|
@test 'Time specified' {
|
|
33
|
+
skip
|
|
25
34
|
run bash gigasecond.sh '2015-01-24 22:00:00Z'
|
|
26
35
|
|
|
27
36
|
[ "$status" -eq 0 ]
|
|
@@ -29,6 +38,7 @@
|
|
|
29
38
|
}
|
|
30
39
|
|
|
31
40
|
@test 'Time with day rollover' {
|
|
41
|
+
skip
|
|
32
42
|
run bash gigasecond.sh '2015-01-24 23:59:59Z'
|
|
33
43
|
|
|
34
44
|
[ "$status" -eq 0 ]
|