trackler 2.0.6.33 → 2.0.6.34
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/tracks/delphi/exercises/beer-song/inputdata.txt +7 -0
- data/tracks/delphi/exercises/beer-song/uBeerSongExample.pas +12 -12
- data/tracks/delphi/exercises/beer-song/uBeerSongTests.pas +74 -59
- data/tracks/elixir/exercises/grains/example.exs +3 -2
- data/tracks/elixir/exercises/grains/grains_test.exs +24 -8
- data/tracks/go/exercises/binary-search/binary_search_test.go +8 -0
- data/tracks/go/exercises/binary-search/example.go +2 -0
- data/tracks/go/exercises/binary/binary_test.go +5 -2
- data/tracks/go/exercises/variable-length-quantity/example.go +2 -0
- data/tracks/go/exercises/variable-length-quantity/variable_length_quantity_test.go +8 -0
- data/tracks/go/exercises/word-count/word_count_test.go +4 -1
- data/tracks/julia/config.json +26 -0
- data/tracks/julia/exercises/gigasecond/example.jl +1 -0
- data/tracks/julia/exercises/gigasecond/gigasecond.jl +3 -0
- data/tracks/julia/exercises/gigasecond/runtests.jl +15 -0
- data/tracks/julia/exercises/roman-numerals/example.jl +21 -0
- data/tracks/julia/exercises/roman-numerals/roman-numerals.jl +3 -0
- data/tracks/julia/exercises/roman-numerals/runtests.jl +37 -0
- data/tracks/julia/exercises/transpose/example.jl +20 -0
- data/tracks/julia/exercises/transpose/runtests.jl +212 -0
- data/tracks/julia/exercises/transpose/transpose.jl +3 -0
- data/tracks/kotlin/.travis.yml +5 -2
- data/tracks/kotlin/bin/{build.sh → unit-tests.sh} +8 -6
- data/tracks/kotlin/exercises/_template/build.gradle +6 -0
- data/tracks/kotlin/exercises/accumulate/build.gradle +6 -0
- data/tracks/kotlin/exercises/accumulate/src/test/kotlin/AccumulateTest.kt +7 -0
- data/tracks/kotlin/exercises/acronym/build.gradle +6 -0
- data/tracks/kotlin/exercises/acronym/src/test/kotlin/AcronymTest.kt +7 -0
- data/tracks/kotlin/exercises/allergies/build.gradle +6 -0
- data/tracks/kotlin/exercises/allergies/src/test/kotlin/AllergiesTest.kt +20 -0
- data/tracks/kotlin/exercises/anagram/build.gradle +6 -0
- data/tracks/kotlin/exercises/anagram/src/test/kotlin/AnagramTest.kt +11 -0
- data/tracks/kotlin/exercises/atbash-cipher/build.gradle +6 -0
- data/tracks/kotlin/exercises/atbash-cipher/src/test/kotlin/AtbashTest.kt +3 -0
- data/tracks/kotlin/exercises/beer-song/build.gradle +6 -0
- data/tracks/kotlin/exercises/beer-song/src/test/kotlin/BeerSongTest.kt +13 -0
- data/tracks/kotlin/exercises/binary-search/build.gradle +6 -0
- data/tracks/kotlin/exercises/binary-search/src/test/kotlin/BinarySearchTest.kt +9 -0
- data/tracks/kotlin/exercises/binary/build.gradle +6 -0
- data/tracks/kotlin/exercises/binary/src/test/kotlin/BinaryTest.kt +2 -0
- data/tracks/kotlin/exercises/bob/build.gradle +6 -0
- data/tracks/kotlin/exercises/bob/src/test/kotlin/BobTest.kt +19 -0
- data/tracks/kotlin/exercises/bracket-push/build.gradle +6 -0
- data/tracks/kotlin/exercises/bracket-push/src/test/kotlin/BracketPushTest.kt +2 -0
- data/tracks/kotlin/exercises/build.gradle +17 -1
- data/tracks/kotlin/exercises/change/build.gradle +6 -0
- data/tracks/kotlin/exercises/change/src/test/kotlin/ChangeTest.kt +9 -0
- data/tracks/kotlin/exercises/difference-of-squares/build.gradle +6 -0
- data/tracks/kotlin/exercises/difference-of-squares/src/test/kotlin/SquaresTest.kt +13 -1
- data/tracks/kotlin/exercises/etl/build.gradle +6 -0
- data/tracks/kotlin/exercises/etl/src/test/kotlin/ETLTest.kt +5 -0
- data/tracks/kotlin/exercises/flatten-array/build.gradle +6 -0
- data/tracks/kotlin/exercises/flatten-array/src/test/kotlin/FlattenerTest.kt +9 -1
- data/tracks/kotlin/exercises/gigasecond/build.gradle +6 -0
- data/tracks/kotlin/exercises/gigasecond/src/test/kotlin/GigasecondTest.kt +6 -0
- data/tracks/kotlin/exercises/grade-school/build.gradle +6 -0
- data/tracks/kotlin/exercises/grade-school/src/test/kotlin/SchoolTest.kt +8 -0
- data/tracks/kotlin/exercises/hamming/build.gradle +6 -0
- data/tracks/kotlin/exercises/hamming/src/test/kotlin/HammingTest.kt +10 -0
- data/tracks/kotlin/exercises/hello-world/build.gradle +6 -0
- data/tracks/kotlin/exercises/hello-world/src/test/kotlin/HelloWorldTest.kt +6 -0
- data/tracks/kotlin/exercises/hexadecimal/build.gradle +6 -0
- data/tracks/kotlin/exercises/hexadecimal/src/test/kotlin/HexadecimalTest.kt +2 -0
- data/tracks/kotlin/exercises/isogram/build.gradle +6 -0
- data/tracks/kotlin/exercises/isogram/src/test/kotlin/IsogramTest.kt +2 -0
- data/tracks/kotlin/exercises/largest-series-product/build.gradle +6 -0
- data/tracks/kotlin/exercises/largest-series-product/src/test/kotlin/SeriesInvalidInputTest.kt +5 -0
- data/tracks/kotlin/exercises/largest-series-product/src/test/kotlin/SeriesValidInputTest.kt +2 -0
- data/tracks/kotlin/exercises/leap/build.gradle +6 -0
- data/tracks/kotlin/exercises/leap/src/test/kotlin/LeapTest.kt +8 -0
- data/tracks/kotlin/exercises/linked-list/build.gradle +6 -0
- data/tracks/kotlin/exercises/linked-list/src/test/kotlin/DequeTest.kt +6 -0
- data/tracks/kotlin/exercises/luhn/build.gradle +6 -0
- data/tracks/kotlin/exercises/luhn/src/test/kotlin/LuhnTest.kt +11 -0
- data/tracks/kotlin/exercises/nth-prime/build.gradle +6 -0
- data/tracks/kotlin/exercises/nth-prime/src/test/kotlin/PrimeTest.kt +6 -0
- data/tracks/kotlin/exercises/nucleotide-count/build.gradle +6 -0
- data/tracks/kotlin/exercises/nucleotide-count/src/test/kotlin/NucleotideTest.kt +12 -1
- data/tracks/kotlin/exercises/pangram/build.gradle +6 -0
- data/tracks/kotlin/exercises/pangram/src/test/kotlin/PangramTest.kt +11 -0
- data/tracks/kotlin/exercises/pascals-triangle/build.gradle +6 -0
- data/tracks/kotlin/exercises/pascals-triangle/src/test/kotlin/PascalsTriangleTest.kt +5 -0
- data/tracks/kotlin/exercises/phone-number/build.gradle +6 -0
- data/tracks/kotlin/exercises/phone-number/src/test/kotlin/PhoneNumberTest.kt +9 -0
- data/tracks/kotlin/exercises/pig-latin/build.gradle +6 -0
- data/tracks/kotlin/exercises/pig-latin/src/test/kotlin/PigLatinTest.kt +2 -0
- data/tracks/kotlin/exercises/raindrops/build.gradle +6 -0
- data/tracks/kotlin/exercises/raindrops/src/test/kotlin/RaindropsTest.kt +2 -0
- data/tracks/kotlin/exercises/rna-transcription/build.gradle +6 -0
- data/tracks/kotlin/exercises/rna-transcription/src/test/kotlin/RnaTranscriptionTest.kt +8 -1
- data/tracks/kotlin/exercises/robot-name/build.gradle +6 -0
- data/tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt +4 -0
- data/tracks/kotlin/exercises/roman-numerals/build.gradle +6 -0
- data/tracks/kotlin/exercises/roman-numerals/src/test/kotlin/RomanNumeralTest.kt +2 -0
- data/tracks/kotlin/exercises/scrabble-score/build.gradle +6 -0
- data/tracks/kotlin/exercises/scrabble-score/src/test/kotlin/ScrabbleScoreTest.kt +2 -0
- data/tracks/kotlin/exercises/series/build.gradle +6 -0
- data/tracks/kotlin/exercises/series/src/test/kotlin/SeriesTest.kt +4 -0
- data/tracks/kotlin/exercises/sieve/build.gradle +6 -0
- data/tracks/kotlin/exercises/sieve/src/test/kotlin/SieveTest.kt +4 -0
- data/tracks/kotlin/exercises/simple-cipher/build.gradle +6 -0
- data/tracks/kotlin/exercises/simple-cipher/src/test/kotlin/IncorrectKeyCipherTest.kt +6 -0
- data/tracks/kotlin/exercises/simple-cipher/src/test/kotlin/RandomKeyCipherTest.kt +7 -0
- data/tracks/kotlin/exercises/simple-cipher/src/test/kotlin/SubstitutionCipherTest.kt +9 -0
- data/tracks/kotlin/exercises/space-age/build.gradle +6 -0
- data/tracks/kotlin/exercises/space-age/src/test/kotlin/SpaceAgeTest.kt +10 -0
- data/tracks/kotlin/exercises/strain/build.gradle +6 -0
- data/tracks/kotlin/exercises/strain/src/test/kotlin/StrainTest.kt +13 -0
- data/tracks/kotlin/exercises/word-count/build.gradle +6 -0
- data/tracks/kotlin/exercises/word-count/src/test/kotlin/WordCountTest.kt +8 -0
- data/tracks/objective-c/circle.yml +1 -1
- data/tracks/perl6/.travis.yml +2 -2
- data/tracks/perl6/config.json +5 -0
- data/tracks/perl6/docs/TESTS.md +78 -18
- data/tracks/perl6/exercises/allergies/{Example.p6 → Example.pm} +0 -0
- data/tracks/perl6/exercises/allergies/allergies.t +2 -7
- data/tracks/perl6/exercises/atbash-cipher/{Example.p6 → Example.pm} +0 -0
- data/tracks/perl6/exercises/atbash-cipher/cipher.t +2 -7
- data/tracks/perl6/exercises/linked-list/Example.pm6 +51 -0
- data/tracks/perl6/exercises/linked-list/linked-list.t +91 -0
- data/tracks/perl6/exercises/space-age/{Example.p6 → Example.pm} +0 -0
- data/tracks/perl6/exercises/space-age/space-age.t +2 -7
- data/tracks/perl6/exercises/trinary/{Example.p6 → Example.pm} +0 -0
- data/tracks/perl6/exercises/trinary/trinary.t +2 -7
- data/tracks/perl6/exercises/wordy/{Example.p6 → Example.pm} +0 -0
- data/tracks/perl6/exercises/wordy/wordy.t +2 -7
- data/tracks/pony/README.md +4 -27
- data/tracks/pony/config.json +16 -0
- data/tracks/pony/exercises/atbash-cipher/example.pony +40 -0
- data/tracks/pony/exercises/atbash-cipher/test.pony +67 -0
- data/tracks/pony/exercises/beer-song/example.pony +44 -0
- data/tracks/pony/exercises/beer-song/test.pony +27 -0
- data/tracks/pony/exercises/rna-transcription/test.pony +1 -1
- data/tracks/prolog/docs/INSTALLATION.md +1 -1
- data/tracks/prolog/docs/TESTS.md +2 -2
- metadata +24 -8
@@ -1,4 +1,5 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
import org.junit.runner.RunWith
|
3
4
|
import org.junit.runners.Parameterized
|
4
5
|
import kotlin.test.assertEquals
|
@@ -38,6 +39,7 @@ class RaindropsTest(val input: Int, val expectedOutput: String) {
|
|
38
39
|
)
|
39
40
|
}
|
40
41
|
|
42
|
+
|
41
43
|
@Test
|
42
44
|
fun test() {
|
43
45
|
assertEquals(expectedOutput, Raindrops.convert(input))
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import org.junit.Assert;
|
2
|
-
import org.junit.Test
|
2
|
+
import org.junit.Test
|
3
|
+
import org.junit.Ignore;
|
3
4
|
|
4
5
|
class RnaTranscriptionTest {
|
5
6
|
|
@@ -12,31 +13,37 @@ class RnaTranscriptionTest {
|
|
12
13
|
|
13
14
|
*/
|
14
15
|
|
16
|
+
|
15
17
|
@Test
|
16
18
|
fun emptyDnaIsEmptyRna() {
|
17
19
|
Assert.assertEquals("", transcribeToRna(""));
|
18
20
|
}
|
19
21
|
|
22
|
+
@Ignore
|
20
23
|
@Test
|
21
24
|
fun cytosineIsGuanine() {
|
22
25
|
Assert.assertEquals("G", transcribeToRna("C"));
|
23
26
|
}
|
24
27
|
|
28
|
+
@Ignore
|
25
29
|
@Test
|
26
30
|
fun guanineIsCytosine() {
|
27
31
|
Assert.assertEquals("C", transcribeToRna("G"));
|
28
32
|
}
|
29
33
|
|
34
|
+
@Ignore
|
30
35
|
@Test
|
31
36
|
fun thymineIsAdenine() {
|
32
37
|
Assert.assertEquals("A", transcribeToRna("T"));
|
33
38
|
}
|
34
39
|
|
40
|
+
@Ignore
|
35
41
|
@Test
|
36
42
|
fun adenineIsUracil() {
|
37
43
|
Assert.assertEquals("U", transcribeToRna("A"));
|
38
44
|
}
|
39
45
|
|
46
|
+
@Ignore
|
40
47
|
@Test
|
41
48
|
fun rnaTranscription() {
|
42
49
|
Assert.assertEquals("UGCACCAGAAUU", transcribeToRna("ACGTGGTCTTAA"));
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
import kotlin.test.assertNotEquals
|
3
4
|
import kotlin.test.assertTrue
|
4
5
|
|
@@ -11,16 +12,19 @@ class RobotTest {
|
|
11
12
|
|
12
13
|
val robot = Robot()
|
13
14
|
|
15
|
+
|
14
16
|
@Test
|
15
17
|
fun hasName() {
|
16
18
|
assertTrue(isValidName(robot.name), "Robot name ${robot.name} didn't match expected pattern.")
|
17
19
|
}
|
18
20
|
|
21
|
+
@Ignore
|
19
22
|
@Test
|
20
23
|
fun differentRobotsHaveDifferentNames() {
|
21
24
|
assertNotEquals(robot.name, Robot().name)
|
22
25
|
}
|
23
26
|
|
27
|
+
@Ignore
|
24
28
|
@Test
|
25
29
|
fun resetName() {
|
26
30
|
val name = robot.name
|
@@ -1,5 +1,6 @@
|
|
1
1
|
|
2
2
|
import org.junit.Test
|
3
|
+
import org.junit.Ignore
|
3
4
|
import org.junit.runner.RunWith
|
4
5
|
import org.junit.runners.Parameterized
|
5
6
|
import kotlin.test.assertEquals
|
@@ -33,6 +34,7 @@ class RomanNumeralsTest(val input: Int, val expectedOutput: String) {
|
|
33
34
|
)
|
34
35
|
}
|
35
36
|
|
37
|
+
|
36
38
|
@Test
|
37
39
|
fun test() {
|
38
40
|
assertEquals(expectedOutput, RomanNumeral.value(input))
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
import org.junit.runner.RunWith
|
3
4
|
import org.junit.runners.Parameterized
|
4
5
|
import kotlin.test.assertEquals
|
@@ -21,6 +22,7 @@ class ScrabbleScoreTest(val input: String, val expectedOutput: Int) {
|
|
21
22
|
)
|
22
23
|
}
|
23
24
|
|
25
|
+
|
24
26
|
@Test
|
25
27
|
fun test() {
|
26
28
|
assertEquals(expectedOutput, Scrabble.scoreWord(input))
|
@@ -1,8 +1,10 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
import kotlin.test.assertEquals
|
3
4
|
|
4
5
|
class SeriesTest {
|
5
6
|
|
7
|
+
|
6
8
|
@Test
|
7
9
|
fun slicesOfOne() {
|
8
10
|
assertEquals(listOf<List<Int>>(), Series.slices(1, ""))
|
@@ -12,6 +14,7 @@ class SeriesTest {
|
|
12
14
|
)
|
13
15
|
}
|
14
16
|
|
17
|
+
@Ignore
|
15
18
|
@Test
|
16
19
|
fun slicesOfTwo() {
|
17
20
|
assertEquals(listOf<List<Int>>(), Series.slices(2, ""))
|
@@ -22,6 +25,7 @@ class SeriesTest {
|
|
22
25
|
)
|
23
26
|
}
|
24
27
|
|
28
|
+
@Ignore
|
25
29
|
@Test
|
26
30
|
fun slicesOfThree() {
|
27
31
|
assertEquals(listOf<List<Int>>(), Series.slices(3, ""))
|
@@ -1,8 +1,10 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
import kotlin.test.assertEquals
|
3
4
|
|
4
5
|
class SieveTest {
|
5
6
|
|
7
|
+
|
6
8
|
@Test
|
7
9
|
fun findFirstPrime() {
|
8
10
|
val expectedOutput = listOf(2)
|
@@ -10,6 +12,7 @@ class SieveTest {
|
|
10
12
|
assertEquals(expectedOutput, Sieve.primesUpTo(2))
|
11
13
|
}
|
12
14
|
|
15
|
+
@Ignore
|
13
16
|
@Test
|
14
17
|
fun findPrimesUpTo10() {
|
15
18
|
val expectedOutput = listOf(2, 3, 5, 7)
|
@@ -17,6 +20,7 @@ class SieveTest {
|
|
17
20
|
assertEquals(expectedOutput, Sieve.primesUpTo(10))
|
18
21
|
}
|
19
22
|
|
23
|
+
@Ignore
|
20
24
|
@Test
|
21
25
|
fun findPrimesUpTo1000() {
|
22
26
|
val expectedOutput = listOf(2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61,
|
@@ -1,27 +1,33 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
|
3
4
|
class IncorrectKeyCipherTest {
|
4
5
|
|
6
|
+
|
5
7
|
@Test(expected = IllegalArgumentException::class)
|
6
8
|
fun cipherThrowsWithAllCapsKey() {
|
7
9
|
Cipher("ABCDEF")
|
8
10
|
}
|
9
11
|
|
12
|
+
@Ignore
|
10
13
|
@Test(expected = IllegalArgumentException::class)
|
11
14
|
fun cipherThrowsWithAnyCapsKey() {
|
12
15
|
Cipher("abcdEFg")
|
13
16
|
}
|
14
17
|
|
18
|
+
@Ignore
|
15
19
|
@Test(expected = IllegalArgumentException::class)
|
16
20
|
fun cipherThrowsWithNumericKey() {
|
17
21
|
Cipher("12345")
|
18
22
|
}
|
19
23
|
|
24
|
+
@Ignore
|
20
25
|
@Test(expected = IllegalArgumentException::class)
|
21
26
|
fun cipherThrowsWithAnyNumericKey() {
|
22
27
|
Cipher("abcd345ef")
|
23
28
|
}
|
24
29
|
|
30
|
+
@Ignore
|
25
31
|
@Test(expected = IllegalArgumentException::class)
|
26
32
|
fun cipherThrowsWithEmptyKey() {
|
27
33
|
Cipher("")
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import org.junit.Before
|
2
2
|
import org.junit.Test
|
3
|
+
import org.junit.Ignore
|
3
4
|
import kotlin.test.assertEquals
|
4
5
|
import kotlin.test.assertNotEquals
|
5
6
|
import kotlin.test.assertTrue
|
@@ -13,16 +14,19 @@ class RandomKeyCipherTest {
|
|
13
14
|
cipher = Cipher()
|
14
15
|
}
|
15
16
|
|
17
|
+
|
16
18
|
@Test
|
17
19
|
fun cipherKeyIsMadeOfLetters() {
|
18
20
|
assertTrue(cipher.key.matches(Regex("[a-z]+")))
|
19
21
|
}
|
20
22
|
|
23
|
+
@Ignore
|
21
24
|
@Test
|
22
25
|
fun defaultCipherKeyIs100Characters() {
|
23
26
|
assertEquals(100, cipher.key.length)
|
24
27
|
}
|
25
28
|
|
29
|
+
@Ignore
|
26
30
|
@Test
|
27
31
|
fun cipherKeysAreRandomlyGenerated() {
|
28
32
|
assertNotEquals(Cipher().key, cipher.key)
|
@@ -32,6 +36,7 @@ class RandomKeyCipherTest {
|
|
32
36
|
* Here we take advantage of the fact that plaintext of "aaa..." doesn't output the key. This is a critical problem
|
33
37
|
* with shift ciphers, some characters will always output the key verbatim.
|
34
38
|
*/
|
39
|
+
@Ignore
|
35
40
|
@Test
|
36
41
|
fun cipherCanEncode() {
|
37
42
|
val expectedOutput = cipher.key.substring(0, 10)
|
@@ -39,6 +44,7 @@ class RandomKeyCipherTest {
|
|
39
44
|
assertEquals(expectedOutput, cipher.encode("aaaaaaaaaa"))
|
40
45
|
}
|
41
46
|
|
47
|
+
@Ignore
|
42
48
|
@Test
|
43
49
|
fun cipherCanDecode() {
|
44
50
|
val expectedOutput = "aaaaaaaaaa"
|
@@ -46,6 +52,7 @@ class RandomKeyCipherTest {
|
|
46
52
|
assertEquals(expectedOutput, cipher.decode(cipher.key.substring(0, 10)))
|
47
53
|
}
|
48
54
|
|
55
|
+
@Ignore
|
49
56
|
@Test
|
50
57
|
fun cipherIsReversible() {
|
51
58
|
val plainText = "abcdefghij"
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import org.junit.Before
|
2
2
|
import org.junit.Test
|
3
|
+
import org.junit.Ignore
|
3
4
|
import kotlin.test.assertEquals
|
4
5
|
|
5
6
|
class SubstitutionCipherTest {
|
@@ -12,11 +13,13 @@ class SubstitutionCipherTest {
|
|
12
13
|
this.cipher = Cipher(KEY)
|
13
14
|
}
|
14
15
|
|
16
|
+
|
15
17
|
@Test
|
16
18
|
fun cipherKeepsTheSubmittedKey() {
|
17
19
|
assertEquals(KEY, cipher.key)
|
18
20
|
}
|
19
21
|
|
22
|
+
@Ignore
|
20
23
|
@Test
|
21
24
|
fun cipherCanEncodeWithGivenKey() {
|
22
25
|
val expectedOutput = "abcdefghij"
|
@@ -24,6 +27,7 @@ class SubstitutionCipherTest {
|
|
24
27
|
assertEquals(expectedOutput, cipher.encode("aaaaaaaaaa"))
|
25
28
|
}
|
26
29
|
|
30
|
+
@Ignore
|
27
31
|
@Test
|
28
32
|
fun cipherCanDecodeWithGivenKey() {
|
29
33
|
val expectedOutput = "aaaaaaaaaa"
|
@@ -31,6 +35,7 @@ class SubstitutionCipherTest {
|
|
31
35
|
assertEquals(expectedOutput, cipher.decode("abcdefghij"))
|
32
36
|
}
|
33
37
|
|
38
|
+
@Ignore
|
34
39
|
@Test
|
35
40
|
fun cipherIsReversibleGivenKey() {
|
36
41
|
val plainText = "abcdefghij"
|
@@ -38,6 +43,7 @@ class SubstitutionCipherTest {
|
|
38
43
|
assertEquals(plainText, cipher.decode(cipher.encode("abcdefghij")))
|
39
44
|
}
|
40
45
|
|
46
|
+
@Ignore
|
41
47
|
@Test
|
42
48
|
fun cipherCanDoubleShiftEncode() {
|
43
49
|
val plainText = "iamapandabear"
|
@@ -46,6 +52,7 @@ class SubstitutionCipherTest {
|
|
46
52
|
assertEquals(expectedOutput, Cipher(plainText).encode(plainText))
|
47
53
|
}
|
48
54
|
|
55
|
+
@Ignore
|
49
56
|
@Test
|
50
57
|
fun cipherCanWrapEncode() {
|
51
58
|
val expectedOutput = "zabcdefghi"
|
@@ -53,6 +60,7 @@ class SubstitutionCipherTest {
|
|
53
60
|
assertEquals(expectedOutput, cipher.encode("zzzzzzzzzz"))
|
54
61
|
}
|
55
62
|
|
63
|
+
@Ignore
|
56
64
|
@Test
|
57
65
|
fun cipherCanEncodeMessageThatIsShorterThanTheKey() {
|
58
66
|
val expectedOutput = "abcde"
|
@@ -60,6 +68,7 @@ class SubstitutionCipherTest {
|
|
60
68
|
assertEquals(expectedOutput, cipher.encode("aaaaa"))
|
61
69
|
}
|
62
70
|
|
71
|
+
@Ignore
|
63
72
|
@Test
|
64
73
|
fun cipherCanDecodeMessageThatIsShorterThanTheKey() {
|
65
74
|
val expectedOutput = "aaaaa"
|
@@ -1,8 +1,10 @@
|
|
1
1
|
import org.junit.Test
|
2
|
+
import org.junit.Ignore
|
2
3
|
import kotlin.test.assertEquals
|
3
4
|
|
4
5
|
class SpaceAgeTest {
|
5
6
|
|
7
|
+
|
6
8
|
@Test
|
7
9
|
fun ageInSeconds() {
|
8
10
|
val age = SpaceAge(1000000)
|
@@ -10,6 +12,7 @@ class SpaceAgeTest {
|
|
10
12
|
assertEquals(1000000, age.seconds)
|
11
13
|
}
|
12
14
|
|
15
|
+
@Ignore
|
13
16
|
@Test
|
14
17
|
fun ageOnEarth() {
|
15
18
|
val age = SpaceAge(1000000000)
|
@@ -17,6 +20,7 @@ class SpaceAgeTest {
|
|
17
20
|
assertEquals(31.69, age.onEarth())
|
18
21
|
}
|
19
22
|
|
23
|
+
@Ignore
|
20
24
|
@Test
|
21
25
|
fun ageOnMercury() {
|
22
26
|
val age = SpaceAge(2134835688)
|
@@ -25,6 +29,7 @@ class SpaceAgeTest {
|
|
25
29
|
assertEquals(280.88, age.onMercury())
|
26
30
|
}
|
27
31
|
|
32
|
+
@Ignore
|
28
33
|
@Test
|
29
34
|
fun ageOnVenus() {
|
30
35
|
val age = SpaceAge(189839836)
|
@@ -33,6 +38,7 @@ class SpaceAgeTest {
|
|
33
38
|
assertEquals(9.78, age.onVenus())
|
34
39
|
}
|
35
40
|
|
41
|
+
@Ignore
|
36
42
|
@Test
|
37
43
|
fun ageOnMars() {
|
38
44
|
val age = SpaceAge(2329871239L)
|
@@ -41,6 +47,7 @@ class SpaceAgeTest {
|
|
41
47
|
assertEquals(39.25, age.onMars())
|
42
48
|
}
|
43
49
|
|
50
|
+
@Ignore
|
44
51
|
@Test
|
45
52
|
fun ageOnJupiter() {
|
46
53
|
val age = SpaceAge(901876382)
|
@@ -49,6 +56,7 @@ class SpaceAgeTest {
|
|
49
56
|
assertEquals(2.41, age.onJupiter())
|
50
57
|
}
|
51
58
|
|
59
|
+
@Ignore
|
52
60
|
@Test
|
53
61
|
fun ageOnSaturn() {
|
54
62
|
val age = SpaceAge(3000000000L)
|
@@ -57,6 +65,7 @@ class SpaceAgeTest {
|
|
57
65
|
assertEquals(3.23, age.onSaturn())
|
58
66
|
}
|
59
67
|
|
68
|
+
@Ignore
|
60
69
|
@Test
|
61
70
|
fun ageOnUranus() {
|
62
71
|
val age = SpaceAge(3210123456L)
|
@@ -65,6 +74,7 @@ class SpaceAgeTest {
|
|
65
74
|
assertEquals(1.21, age.onUranus())
|
66
75
|
}
|
67
76
|
|
77
|
+
@Ignore
|
68
78
|
@Test
|
69
79
|
fun ageOnNeptune() {
|
70
80
|
val age = SpaceAge(8210123456L)
|