trackler 2.0.8.12 → 2.0.8.13
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/common/exercises/hamming/canonical-data.json +121 -104
- data/lib/trackler/version.rb +1 -1
- data/tracks/delphi/.gitignore +40 -2
- data/tracks/delphi/config.json +8 -0
- data/tracks/delphi/exercises/allergies/{AllergyTests.dpr → Allergies.dpr} +1 -1
- data/tracks/delphi/exercises/allergies/uAllergyTests.pas +1 -1
- data/tracks/delphi/exercises/bank-account/{BankAccountTests.dpr → BankAccount.dpr} +1 -1
- data/tracks/delphi/exercises/bank-account/uBankAccountTests.pas +1 -1
- data/tracks/delphi/exercises/beer-song/{BeerSongTests.dpr → BeerSong.dpr} +1 -1
- data/tracks/delphi/exercises/beer-song/uBeerSongTests.pas +7 -6
- data/tracks/delphi/exercises/binary-search/{BinarySearchTest.dpr → BinarySearch.dpr} +1 -1
- data/tracks/delphi/exercises/binary-search/uBinarySearchTest.pas +9 -8
- data/tracks/delphi/exercises/bob/uBobTests.pas +18 -17
- data/tracks/delphi/exercises/book-store/{BookStoreTests.dpr → BookStore.dpr} +1 -1
- data/tracks/delphi/exercises/book-store/uBookStoreTests.pas +12 -11
- data/tracks/delphi/exercises/bowling/{BowlingTests.dpr → Bowling.dpr} +1 -1
- data/tracks/delphi/exercises/bowling/uBowlingTests.pas +24 -23
- data/tracks/delphi/exercises/circular-buffer/{CircularBufferTests.dpr → CircularBuffer.dpr} +1 -1
- data/tracks/delphi/exercises/circular-buffer/uCircularBufferTests.pas +1 -1
- data/tracks/delphi/exercises/clock/{ClockTest.dpr → Clock.dpr} +1 -1
- data/tracks/delphi/exercises/clock/uClockTest.pas +13 -5
- data/tracks/delphi/exercises/etl/{ETLtests.dpr → ETL.dpr} +1 -1
- data/tracks/delphi/exercises/etl/uETLtests.pas +1 -1
- data/tracks/delphi/exercises/grains/{GrainsTests.dpr → Grains.dpr} +1 -1
- data/tracks/delphi/exercises/grains/uGrainsTests.pas +11 -10
- data/tracks/delphi/exercises/hamming/uHammingTests.pas +1 -0
- data/tracks/delphi/exercises/leap/{LeapTest.dpr → Leap.dpr} +1 -1
- data/tracks/delphi/exercises/leap/uLeapTests.pas +1 -0
- data/tracks/delphi/exercises/nucleotide-count/{NucleotideCountTest.dpr → NucleotideCount.dpr} +1 -1
- data/tracks/delphi/exercises/nucleotide-count/uNucleotideCountTest.pas +9 -8
- data/tracks/delphi/exercises/perfect-numbers/{PerfectNumbersTest.dpr → PerfectNumbers.dpr} +1 -1
- data/tracks/delphi/exercises/perfect-numbers/uPerfectNumbersTest.pas +71 -20
- data/tracks/delphi/exercises/phone-number/{PhoneNumberTests.dpr → PhoneNumber.dpr} +1 -1
- data/tracks/delphi/exercises/phone-number/uPhoneNumberTests.pas +1 -0
- data/tracks/delphi/exercises/poker/uPokerTest.pas +1 -0
- data/tracks/delphi/exercises/raindrops/raindrops.dpr +60 -0
- data/tracks/delphi/exercises/raindrops/uRaindropsExample.pas +27 -0
- data/tracks/delphi/exercises/raindrops/uRaindropsTest.pas +180 -0
- data/tracks/delphi/exercises/rna-transcription/{TestRnaTranscription.dpr → RnaTranscription.dpr} +1 -1
- data/tracks/delphi/exercises/rna-transcription/uTestRnaTranscription.pas +8 -7
- data/tracks/delphi/exercises/saddle-points/{TestSaddlePoints.dpr → SaddlePoints.dpr} +1 -1
- data/tracks/delphi/exercises/saddle-points/uSaddlePointsTests.pas +6 -5
- data/tracks/go/config.json +12 -4
- data/tracks/go/exercises/accumulate/accumulate_test.go +2 -4
- data/tracks/go/exercises/luhn/cases_test.go +76 -0
- data/tracks/go/exercises/luhn/example.go +26 -26
- data/tracks/go/exercises/luhn/example_gen.go +50 -0
- data/tracks/go/exercises/luhn/luhn_test.go +1 -14
- data/tracks/go/exercises/perfect-numbers/perfect_numbers_test.go +14 -13
- data/tracks/java/exercises/rna-transcription/src/example/java/RnaTranscription.java +1 -1
- data/tracks/java/exercises/rna-transcription/src/main/java/RnaTranscription.java +5 -0
- data/tracks/java/exercises/rna-transcription/src/test/java/RnaTranscriptionTest.java +14 -7
- data/tracks/julia/.travis.yml +1 -0
- data/tracks/lisp/docs/ABOUT.md +10 -7
- data/tracks/lisp/docs/INSTALLATION.md +12 -4
- data/tracks/lisp/docs/LEARNING.md +11 -5
- data/tracks/lisp/docs/RESOURCES.md +18 -9
- data/tracks/lisp/docs/TESTS.md +4 -0
- data/tracks/scala/exercises/simple-linked-list/src/test/scala/SimpleLinkedListTest.scala +9 -1
- data/tracks/typescript/config.json +6 -0
- data/tracks/typescript/exercises/food-chain/food-chain.example.ts +54 -0
- data/tracks/typescript/exercises/food-chain/food-chain.test.ts +163 -0
- data/tracks/typescript/exercises/food-chain/package.json +37 -0
- data/tracks/typescript/exercises/food-chain/tsconfig.json +21 -0
- data/tracks/typescript/exercises/food-chain/tslint.json +127 -0
- data/tracks/typescript/exercises/food-chain/yarn.lock +2697 -0
- metadata +30 -19
- data/tracks/java/exercises/rna-transcription/src/main/java/.keep +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: be4829a9e4c7af9a44b4ff36b33726b1e8b8a763
|
4
|
+
data.tar.gz: 4a9e2b1deb132c3610b91ae482f5e8860f5974d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8afa4247bd983207ea963acefc10f4725741a4bc14f3fe84a28f95ae5431085e92ebf42a04faccaa55e87b00dc27417f1c587b0b19131d69c570b2475e609e3e
|
7
|
+
data.tar.gz: 81472680474c9394108c90481a29047168554329a87f079c48d4b0f3da2fa71b66c2e221f638f62a78c496aeb0a6a5a675a259e521e473e20c99dc8d26f21757
|
@@ -1,106 +1,123 @@
|
|
1
1
|
{
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
2
|
+
"exercise": "hamming",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"comments": [
|
5
|
+
"Language implementations vary on the issue of unequal length strands.",
|
6
|
+
"A language may elect to simplify this task by only presenting equal",
|
7
|
+
"length test cases. For languages handling unequal length strands as",
|
8
|
+
"error condition, unequal length test cases are included here and are",
|
9
|
+
"indicated with an expected value of -1. Note however that -1 is",
|
10
|
+
"simply an indication here in the JSON. Actually returning -1 from",
|
11
|
+
"a hamming distance function may or may not be idiomatic in a language.",
|
12
|
+
"Language idioms of errors or exceptions should be followed.",
|
13
|
+
"Alternative interpretations such as ignoring excess length at the end",
|
14
|
+
"are not represented here."
|
15
|
+
],
|
16
|
+
"cases": [
|
17
|
+
{
|
18
|
+
"description": "identical strands",
|
19
|
+
"property": "distance",
|
20
|
+
"strand1": "A",
|
21
|
+
"strand2": "A",
|
22
|
+
"expected": 0
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"description": "long identical strands",
|
26
|
+
"property": "distance",
|
27
|
+
"strand1": "GGACTGA",
|
28
|
+
"strand2": "GGACTGA",
|
29
|
+
"expected": 0
|
30
|
+
},
|
31
|
+
{
|
32
|
+
"description": "complete distance in single nucleotide strands",
|
33
|
+
"property": "distance",
|
34
|
+
"strand1": "A",
|
35
|
+
"strand2": "G",
|
36
|
+
"expected": 1
|
37
|
+
},
|
38
|
+
{
|
39
|
+
"description": "complete distance in small strands",
|
40
|
+
"property": "distance",
|
41
|
+
"strand1": "AG",
|
42
|
+
"strand2": "CT",
|
43
|
+
"expected": 2
|
44
|
+
},
|
45
|
+
{
|
46
|
+
"description": "small distance in small strands",
|
47
|
+
"property": "distance",
|
48
|
+
"strand1": "AT",
|
49
|
+
"strand2": "CT",
|
50
|
+
"expected": 1
|
51
|
+
},
|
52
|
+
{
|
53
|
+
"description": "small distance",
|
54
|
+
"property": "distance",
|
55
|
+
"strand1": "GGACG",
|
56
|
+
"strand2": "GGTCG",
|
57
|
+
"expected": 1
|
58
|
+
},
|
59
|
+
{
|
60
|
+
"description": "small distance in long strands",
|
61
|
+
"property": "distance",
|
62
|
+
"strand1": "ACCAGGG",
|
63
|
+
"strand2": "ACTATGG",
|
64
|
+
"expected": 2
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"description": "non-unique character in first strand",
|
68
|
+
"property": "distance",
|
69
|
+
"strand1": "AGA",
|
70
|
+
"strand2": "AGG",
|
71
|
+
"expected": 1
|
72
|
+
},
|
73
|
+
{
|
74
|
+
"description": "non-unique character in second strand",
|
75
|
+
"property": "distance",
|
76
|
+
"strand1": "AGG",
|
77
|
+
"strand2": "AGA",
|
78
|
+
"expected": 1
|
79
|
+
},
|
80
|
+
{
|
81
|
+
"description": "same nucleotides in different positions",
|
82
|
+
"property": "distance",
|
83
|
+
"strand1": "TAG",
|
84
|
+
"strand2": "GAT",
|
85
|
+
"expected": 2
|
86
|
+
},
|
87
|
+
{
|
88
|
+
"description": "large distance",
|
89
|
+
"property": "distance",
|
90
|
+
"strand1": "GATACA",
|
91
|
+
"strand2": "GCATAA",
|
92
|
+
"expected": 4
|
93
|
+
},
|
94
|
+
{
|
95
|
+
"description": "large distance in off-by-one strand",
|
96
|
+
"property": "distance",
|
97
|
+
"strand1": "GGACGGATTCTG",
|
98
|
+
"strand2": "AGGACGGATTCT",
|
99
|
+
"expected": 9
|
100
|
+
},
|
101
|
+
{
|
102
|
+
"description": "empty strands",
|
103
|
+
"property": "distance",
|
104
|
+
"strand1": "",
|
105
|
+
"strand2": "",
|
106
|
+
"expected": 0
|
107
|
+
},
|
108
|
+
{
|
109
|
+
"description": "disallow first strand longer",
|
110
|
+
"property": "distance",
|
111
|
+
"strand1": "AATG",
|
112
|
+
"strand2": "AAA",
|
113
|
+
"expected": -1
|
114
|
+
},
|
115
|
+
{
|
116
|
+
"description": "disallow second strand longer",
|
117
|
+
"property": "distance",
|
118
|
+
"strand1": "ATA",
|
119
|
+
"strand2": "AGTG",
|
120
|
+
"expected": -1
|
121
|
+
}
|
122
|
+
]
|
106
123
|
}
|
data/lib/trackler/version.rb
CHANGED
data/tracks/delphi/.gitignore
CHANGED
@@ -1,5 +1,43 @@
|
|
1
|
-
|
2
|
-
.DS_Store
|
1
|
+
# Exercism project
|
3
2
|
bin/configlet
|
4
3
|
bin/configlet.exe
|
4
|
+
|
5
|
+
# Delphi Language
|
6
|
+
*.a
|
7
|
+
*.apk
|
8
|
+
*.bpi
|
9
|
+
*.bpl
|
10
|
+
*.dcp
|
11
|
+
*.dcu
|
12
|
+
*.dll
|
13
|
+
*.drc
|
14
|
+
*.dres
|
15
|
+
*.exe
|
16
|
+
*.lib
|
17
|
+
*.map
|
18
|
+
*.o
|
19
|
+
*.ocx
|
20
|
+
*.rsm
|
21
|
+
*.so
|
22
|
+
*.tds
|
23
|
+
|
24
|
+
# Delphi autogenerated files (duplicated info)
|
25
|
+
*.cfg
|
5
26
|
*.dproj
|
27
|
+
*.hpp
|
28
|
+
*Resource.rc
|
29
|
+
|
30
|
+
# Delphi local files (user-specific info)
|
31
|
+
*.dsk
|
32
|
+
*.identcache
|
33
|
+
*.local
|
34
|
+
*.projdata
|
35
|
+
*.tvsconfig
|
36
|
+
|
37
|
+
# Delphi history and backups
|
38
|
+
*.~*
|
39
|
+
__history/
|
40
|
+
__recovery/
|
41
|
+
|
42
|
+
# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
|
43
|
+
*.stat
|
data/tracks/delphi/config.json
CHANGED
@@ -10,22 +10,23 @@ type
|
|
10
10
|
VerseTests = class(TObject)
|
11
11
|
public
|
12
12
|
[Test]
|
13
|
+
// [Ignore('Comment the "[Ignore]" statement to run the test')]
|
13
14
|
procedure First_verse;
|
14
15
|
|
15
16
|
[Test]
|
16
|
-
[Ignore
|
17
|
+
[Ignore]
|
17
18
|
procedure Middle_verse;
|
18
19
|
|
19
20
|
[Test]
|
20
|
-
[Ignore
|
21
|
+
[Ignore]
|
21
22
|
procedure Third_to_last_verse;
|
22
23
|
|
23
24
|
[Test]
|
24
|
-
[Ignore
|
25
|
+
[Ignore]
|
25
26
|
procedure Penultimate_verse;
|
26
27
|
|
27
28
|
[Test]
|
28
|
-
[Ignore
|
29
|
+
[Ignore]
|
29
30
|
procedure Last_verse;
|
30
31
|
end;
|
31
32
|
|
@@ -33,11 +34,11 @@ type
|
|
33
34
|
LyricsTests = class(TObject)
|
34
35
|
public
|
35
36
|
[Test]
|
36
|
-
[Ignore
|
37
|
+
[Ignore]
|
37
38
|
procedure Last_4_verses;
|
38
39
|
|
39
40
|
[Test]
|
40
|
-
[Ignore
|
41
|
+
[Ignore]
|
41
42
|
procedure All_verses;
|
42
43
|
end;
|
43
44
|
|
@@ -10,38 +10,39 @@ type
|
|
10
10
|
TBinarySearchTest = class(TObject)
|
11
11
|
public
|
12
12
|
[Test]
|
13
|
+
// [Ignore('Comment the "[Ignore]" statement to run the test')]
|
13
14
|
procedure Should_return_minus_one_when_an_empty_array_is_searched;
|
14
15
|
|
15
16
|
[Test]
|
16
|
-
[Ignore
|
17
|
+
[Ignore]
|
17
18
|
procedure Should_be_able_to_find_a_value_in_a_single_element_array_with_one_access;
|
18
19
|
|
19
20
|
[Test]
|
20
|
-
[Ignore
|
21
|
+
[Ignore]
|
21
22
|
procedure Should_return_minus_one_if_a_value_is_less_than_the_element_in_a_single_element_array;
|
22
23
|
|
23
24
|
[Test]
|
24
|
-
[Ignore
|
25
|
+
[Ignore]
|
25
26
|
procedure Should_return_minus_one_if_a_value_is_greater_than_the_element_in_a_single_element_array;
|
26
27
|
|
27
28
|
[Test]
|
28
|
-
[Ignore
|
29
|
+
[Ignore]
|
29
30
|
procedure Should_find_an_element_in_a_longer_array;
|
30
31
|
|
31
32
|
[Test]
|
32
|
-
[Ignore
|
33
|
+
[Ignore]
|
33
34
|
procedure Should_find_elements_at_the_beginning_of_an_array;
|
34
35
|
|
35
36
|
[Test]
|
36
|
-
[Ignore
|
37
|
+
[Ignore]
|
37
38
|
procedure Should_find_elements_at_the_end_of_an_array;
|
38
39
|
|
39
40
|
[Test]
|
40
|
-
[Ignore
|
41
|
+
[Ignore]
|
41
42
|
procedure Should_return_minus_one_if_a_value_is_less_than_all_elements_in_a_long_array;
|
42
43
|
|
43
44
|
[Test]
|
44
|
-
[Ignore
|
45
|
+
[Ignore]
|
45
46
|
procedure Should_return_minus_one_if_a_value_is_greater_than_all_elements_in_a_long_array;
|
46
47
|
end;
|
47
48
|
|
@@ -10,74 +10,75 @@ type
|
|
10
10
|
BobTests = class(TObject)
|
11
11
|
public
|
12
12
|
[Test]
|
13
|
+
// [Ignore('Comment the "[Ignore]" statement to run the test')]
|
13
14
|
procedure Stating_something;
|
14
15
|
|
15
16
|
[Test]
|
16
|
-
[Ignore
|
17
|
+
[Ignore]
|
17
18
|
procedure Shouting;
|
18
19
|
|
19
20
|
[Test]
|
20
|
-
[Ignore
|
21
|
+
[Ignore]
|
21
22
|
procedure Asking_a_question;
|
22
23
|
|
23
24
|
[Test]
|
24
|
-
[Ignore
|
25
|
+
[Ignore]
|
25
26
|
procedure Asking_a_question_with_a_trailing_space;
|
26
27
|
|
27
28
|
[Test]
|
28
|
-
[Ignore
|
29
|
+
[Ignore]
|
29
30
|
procedure Asking_a_numeric_question;
|
30
31
|
|
31
32
|
[Test]
|
32
|
-
[Ignore
|
33
|
+
[Ignore]
|
33
34
|
procedure Talking_forcefully;
|
34
35
|
|
35
36
|
[Test]
|
36
|
-
[Ignore
|
37
|
+
[Ignore]
|
37
38
|
procedure Using_acronyms_in_regular_search;
|
38
39
|
|
39
40
|
[Test]
|
40
|
-
[Ignore
|
41
|
+
[Ignore]
|
41
42
|
procedure Forceful_questions;
|
42
43
|
|
43
44
|
[Test]
|
44
|
-
[Ignore
|
45
|
+
[Ignore]
|
45
46
|
procedure Shouting_numbers;
|
46
47
|
|
47
48
|
[Test]
|
48
|
-
[Ignore
|
49
|
+
[Ignore]
|
49
50
|
procedure Only_numbers;
|
50
51
|
|
51
52
|
[Test]
|
52
|
-
[Ignore
|
53
|
+
[Ignore]
|
53
54
|
procedure Question_with_only_numbers;
|
54
55
|
|
55
56
|
[Test]
|
56
|
-
[Ignore
|
57
|
+
[Ignore]
|
57
58
|
procedure Shouting_with_special_characters;
|
58
59
|
|
59
60
|
[Test]
|
60
|
-
[Ignore
|
61
|
+
[Ignore]
|
61
62
|
procedure Shouting_with_no_exclamation_mark;
|
62
63
|
|
63
64
|
[Test]
|
64
|
-
[Ignore
|
65
|
+
[Ignore]
|
65
66
|
procedure Statement_containing_question_mark;
|
66
67
|
|
67
68
|
[Test]
|
68
|
-
[Ignore
|
69
|
+
[Ignore]
|
69
70
|
procedure Prattling_on;
|
70
71
|
|
71
72
|
[Test]
|
72
|
-
[Ignore
|
73
|
+
[Ignore]
|
73
74
|
procedure Silence;
|
74
75
|
|
75
76
|
[Test]
|
76
|
-
[Ignore
|
77
|
+
[Ignore]
|
77
78
|
procedure Prolonged_silence;
|
78
79
|
|
79
80
|
[Test]
|
80
|
-
[Ignore
|
81
|
+
[Ignore]
|
81
82
|
procedure Multiple_line_question;
|
82
83
|
end;
|
83
84
|
|