trackler 2.0.8.7 → 2.0.8.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/common/CONTRIBUTING.md +2 -2
- data/common/exercises/diamond/canonical-data.json +125 -0
- data/common/exercises/difference-of-squares/metadata.yml +1 -1
- data/common/exercises/hello-world/description.md +1 -1
- data/common/exercises/perfect-numbers/canonical-data.json +108 -0
- data/common/exercises/word-search/description.md +9 -9
- data/lib/trackler/version.rb +1 -1
- data/tracks/delphi/exercises/bob/uBobTests.pas +17 -17
- data/tracks/elixir/config.json +6 -0
- data/tracks/elixir/exercises/all-your-base/all-your-base-test.exs +115 -0
- data/tracks/elixir/exercises/all-your-base/all-your-base.exs +10 -0
- data/tracks/elixir/exercises/all-your-base/example.exs +48 -0
- data/tracks/erlang/.gitignore +1 -0
- data/tracks/erlang/.travis.yml +5 -1
- data/tracks/erlang/bin/journey-test.sh +264 -0
- data/tracks/erlang/exercises/allergies/test/allergies_tests.erl +1 -1
- data/tracks/erlang/exercises/nucleotide-count/test/{dna_tests.erl → nucleotide_count_tests.erl} +2 -2
- data/tracks/erlang/exercises/parallel-letter-frequency/src/example.erl +1 -1
- data/tracks/erlang/exercises/phone-number/test/{phone_tests.erl → phone_number_tests.erl} +2 -2
- data/tracks/erlang/exercises/robot-simulator/src/example.erl +1 -1
- data/tracks/erlang/exercises/scrabble-score/test/scrabble_score_tests.erl +1 -1
- data/tracks/erlang/exercises/series/src/example.erl +1 -1
- data/tracks/go/exercises/parallel-letter-frequency/example.go +2 -0
- data/tracks/go/exercises/parallel-letter-frequency/parallel_letter_frequency_test.go +8 -0
- data/tracks/go/exercises/pascals-triangle/example.go +2 -0
- data/tracks/go/exercises/pascals-triangle/pascals_triangle_test.go +8 -0
- data/tracks/java/exercises/acronym/src/test/java/AcronymTest.java +8 -0
- data/tracks/java/exercises/beer-song/src/test/java/BeerSongTest.java +44 -8
- data/tracks/javascript/config.json +27 -9
- data/tracks/julia/README.md +3 -0
- data/tracks/julia/img/logo.png +0 -0
- data/tracks/julia/img/logo.svg +11 -0
- data/tracks/r/exercises/TRACK_HINTS.md +8 -0
- data/tracks/typescript/config.json +1 -1
- metadata +13 -5
- data/tracks/r/docs/SETUP.md +0 -8
@@ -45,6 +45,14 @@ public class AcronymTest {
|
|
45
45
|
assertEquals(expected, Acronym.generate(phrase));
|
46
46
|
}
|
47
47
|
|
48
|
+
@Ignore
|
49
|
+
@Test
|
50
|
+
public void fromPhrasesWithNonAcronymAllCapsWord() {
|
51
|
+
final String phrase = "GNU Image Manipulation Program";
|
52
|
+
final String expected = "GIMP";
|
53
|
+
assertEquals(expected, Acronym.generate(phrase));
|
54
|
+
}
|
55
|
+
|
48
56
|
@Ignore
|
49
57
|
@Test
|
50
58
|
public void fromPhrasesWithPunctuationAndSentenceCasing() {
|
@@ -5,21 +5,57 @@ import static org.junit.Assert.assertEquals;
|
|
5
5
|
|
6
6
|
public class BeerSongTest {
|
7
7
|
|
8
|
+
@Test
|
9
|
+
public void singFirstVerse() {
|
10
|
+
assertEquals("99 bottles of beer on the wall, 99 bottles of beer.\n" +
|
11
|
+
"Take one down and pass it around, 98 bottles of beer on the wall.\n\n",
|
12
|
+
BeerSong.verse(99));
|
13
|
+
}
|
14
|
+
|
15
|
+
@Ignore
|
16
|
+
@Test
|
17
|
+
public void singMiddleVerse() {
|
18
|
+
assertEquals("44 bottles of beer on the wall, 44 bottles of beer.\n" +
|
19
|
+
"Take one down and pass it around, 43 bottles of beer on the wall.\n\n",
|
20
|
+
BeerSong.verse(44));
|
21
|
+
}
|
22
|
+
|
23
|
+
@Ignore
|
24
|
+
@Test
|
25
|
+
public void singThirdToLastVerse() {
|
26
|
+
assertEquals("2 bottles of beer on the wall, 2 bottles of beer.\n" +
|
27
|
+
"Take one down and pass it around, 1 bottle of beer on the wall.\n\n",
|
28
|
+
BeerSong.verse(2));
|
29
|
+
}
|
8
30
|
|
31
|
+
@Ignore
|
9
32
|
@Test
|
10
|
-
public void
|
11
|
-
assertEquals("
|
12
|
-
|
13
|
-
|
14
|
-
|
33
|
+
public void singPenultimateVerse() {
|
34
|
+
assertEquals("1 bottle of beer on the wall, 1 bottle of beer.\n" +
|
35
|
+
"Take it down and pass it around, no more bottles of beer on the wall.\n\n",
|
36
|
+
BeerSong.verse(1));
|
37
|
+
}
|
15
38
|
|
39
|
+
@Ignore
|
40
|
+
@Test
|
41
|
+
public void singLastVerse() {
|
42
|
+
assertEquals("No more bottles of beer on the wall, no more bottles of beer.\n" +
|
43
|
+
"Go to the store and buy some more, 99 bottles of beer on the wall.\n\n",
|
44
|
+
BeerSong.verse(0));
|
16
45
|
}
|
17
46
|
|
18
47
|
@Ignore
|
19
48
|
@Test
|
20
|
-
public void
|
21
|
-
assertEquals("
|
22
|
-
|
49
|
+
public void singLastFourVerses() {
|
50
|
+
assertEquals("3 bottles of beer on the wall, 3 bottles of beer.\n" +
|
51
|
+
"Take one down and pass it around, 2 bottles of beer on the wall.\n\n" +
|
52
|
+
"2 bottles of beer on the wall, 2 bottles of beer.\n" +
|
53
|
+
"Take one down and pass it around, 1 bottle of beer on the wall.\n\n" +
|
54
|
+
"1 bottle of beer on the wall, 1 bottle of beer.\n" +
|
55
|
+
"Take it down and pass it around, no more bottles of beer on the wall.\n\n" +
|
56
|
+
"No more bottles of beer on the wall, no more bottles of beer.\n" +
|
57
|
+
"Go to the store and buy some more, 99 bottles of beer on the wall.\n\n",
|
58
|
+
BeerSong.sing(3,0));
|
23
59
|
}
|
24
60
|
|
25
61
|
@Ignore
|
@@ -100,19 +100,32 @@
|
|
100
100
|
]
|
101
101
|
},
|
102
102
|
{
|
103
|
-
"slug": "
|
103
|
+
"slug": "pangram",
|
104
104
|
"difficulty": 1,
|
105
105
|
"topics": [
|
106
|
+
"Control flow (conditionals)",
|
107
|
+
"Control flow (loops)",
|
108
|
+
"Lists",
|
109
|
+
"Strings",
|
110
|
+
"Maps",
|
111
|
+
"Algorithms",
|
112
|
+
"Searching"
|
106
113
|
]
|
107
114
|
},
|
108
115
|
{
|
109
|
-
"slug": "
|
116
|
+
"slug": "bob",
|
110
117
|
"difficulty": 1,
|
111
118
|
"topics": [
|
119
|
+
"Control flow (conditionals)",
|
120
|
+
"Polymorfism",
|
121
|
+
"Strings",
|
122
|
+
"Unicode",
|
123
|
+
"Pattern recognition",
|
124
|
+
"Regular expressions"
|
112
125
|
]
|
113
126
|
},
|
114
127
|
{
|
115
|
-
"slug": "
|
128
|
+
"slug": "gigasecond",
|
116
129
|
"difficulty": 1,
|
117
130
|
"topics": [
|
118
131
|
]
|
@@ -123,12 +136,6 @@
|
|
123
136
|
"topics": [
|
124
137
|
]
|
125
138
|
},
|
126
|
-
{
|
127
|
-
"slug": "pangram",
|
128
|
-
"difficulty": 1,
|
129
|
-
"topics": [
|
130
|
-
]
|
131
|
-
},
|
132
139
|
{
|
133
140
|
"slug": "beer-song",
|
134
141
|
"difficulty": 1,
|
@@ -195,6 +202,17 @@
|
|
195
202
|
"topics": [
|
196
203
|
]
|
197
204
|
},
|
205
|
+
{
|
206
|
+
"slug": "word-count",
|
207
|
+
"difficulty": 1,
|
208
|
+
"topics": [
|
209
|
+
"Control flow (loops)",
|
210
|
+
"Lists",
|
211
|
+
"Strings",
|
212
|
+
"Unicode",
|
213
|
+
"Regular expressions"
|
214
|
+
]
|
215
|
+
},
|
198
216
|
{
|
199
217
|
"slug": "acronym",
|
200
218
|
"difficulty": 1,
|
data/tracks/julia/README.md
CHANGED
@@ -58,3 +58,6 @@ Your example solutions should adhere to the following guidelines:
|
|
58
58
|
- it is generally preferred to use ASCII operators and identifiers over Unicode equivalents whenever possible
|
59
59
|
|
60
60
|
These are based on the [General Formatting Guidelines](https://github.com/JuliaLang/julia/blob/master/CONTRIBUTING.md#general-formatting-guidelines-for-julia-code-contributions) for contributions to the Julia codebase.
|
61
|
+
|
62
|
+
## Julia icon
|
63
|
+
The Julia logo has been designed by Stefan Karpinski. He has granted us permission to create and use a derived logo for this exercism track.
|
Binary file
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
4
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
5
|
+
width="612px" height="792px" viewBox="0 0 612 792" enable-background="new 0 0 612 792" xml:space="preserve">
|
6
|
+
<circle fill="#FFFFFF" stroke="#212121" stroke-width="12" stroke-miterlimit="10" cx="287.849" cy="338.754" r="219.026"/>
|
7
|
+
<circle fill="#D71D4F" stroke="#212121" stroke-width="12" stroke-miterlimit="10" cx="180.973" cy="398.638" r="82.743"/>
|
8
|
+
<circle fill="#FFFFFF" stroke="#212121" stroke-width="12" stroke-miterlimit="10" cx="287.849" cy="216.338" r="82.743"/>
|
9
|
+
<circle fill="#212121" stroke="#212121" stroke-width="12" stroke-miterlimit="10" cx="393.733" cy="398.639" r="82.743"/>
|
10
|
+
<circle fill="none" stroke="#FFFFFF" stroke-width="2" stroke-miterlimit="10" cx="393.733" cy="398.639" r="76.548"/>
|
11
|
+
</svg>
|
@@ -0,0 +1,8 @@
|
|
1
|
+
## Installation
|
2
|
+
See [this guide](https://github.com/exercism/xr/blob/master/docs/INSTALLATION.md) for instructions on how to setup your local R environment.
|
3
|
+
|
4
|
+
## How to implement your solution
|
5
|
+
In each problem folder, there is a file named `<exercise_name>.R` containing a function that returns a `NULL` value. Place your implementation inside the body of the function.
|
6
|
+
|
7
|
+
## How to run tests
|
8
|
+
Inside of RStudio, simply execute the `test_<exercise_name>.R` script. On the command-line, you can also run `Rscript test_<exercise_name>.R`.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trackler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.8.
|
4
|
+
version: 2.0.8.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katrina Owen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-02
|
11
|
+
date: 2017-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -180,6 +180,7 @@ files:
|
|
180
180
|
- common/exercises/custom-set/canonical-data.json
|
181
181
|
- common/exercises/custom-set/description.md
|
182
182
|
- common/exercises/custom-set/metadata.yml
|
183
|
+
- common/exercises/diamond/canonical-data.json
|
183
184
|
- common/exercises/diamond/description.md
|
184
185
|
- common/exercises/diamond/metadata.yml
|
185
186
|
- common/exercises/difference-of-squares/canonical-data.json
|
@@ -293,6 +294,7 @@ files:
|
|
293
294
|
- common/exercises/pascals-triangle/canonical-data.json
|
294
295
|
- common/exercises/pascals-triangle/description.md
|
295
296
|
- common/exercises/pascals-triangle/metadata.yml
|
297
|
+
- common/exercises/perfect-numbers/canonical-data.json
|
296
298
|
- common/exercises/perfect-numbers/description.md
|
297
299
|
- common/exercises/perfect-numbers/metadata.yml
|
298
300
|
- common/exercises/phone-number/canonical-data.json
|
@@ -2107,6 +2109,9 @@ files:
|
|
2107
2109
|
- tracks/elixir/exercises/acronym/acronym.exs
|
2108
2110
|
- tracks/elixir/exercises/acronym/acronym_test.exs
|
2109
2111
|
- tracks/elixir/exercises/acronym/example.exs
|
2112
|
+
- tracks/elixir/exercises/all-your-base/all-your-base-test.exs
|
2113
|
+
- tracks/elixir/exercises/all-your-base/all-your-base.exs
|
2114
|
+
- tracks/elixir/exercises/all-your-base/example.exs
|
2110
2115
|
- tracks/elixir/exercises/allergies/allergies.exs
|
2111
2116
|
- tracks/elixir/exercises/allergies/allergies_test.exs
|
2112
2117
|
- tracks/elixir/exercises/allergies/example.exs
|
@@ -2487,6 +2492,7 @@ files:
|
|
2487
2492
|
- tracks/erlang/_test/bootstrap.sh
|
2488
2493
|
- tracks/erlang/_test/check-exercises.escript
|
2489
2494
|
- tracks/erlang/bin/fetch-configlet
|
2495
|
+
- tracks/erlang/bin/journey-test.sh
|
2490
2496
|
- tracks/erlang/config.json
|
2491
2497
|
- tracks/erlang/docs/ABOUT.md
|
2492
2498
|
- tracks/erlang/docs/INSTALLATION.md
|
@@ -2602,7 +2608,7 @@ files:
|
|
2602
2608
|
- tracks/erlang/exercises/nucleotide-count/rebar.config
|
2603
2609
|
- tracks/erlang/exercises/nucleotide-count/src/example.erl
|
2604
2610
|
- tracks/erlang/exercises/nucleotide-count/src/nucleotide_count.app.src
|
2605
|
-
- tracks/erlang/exercises/nucleotide-count/test/
|
2611
|
+
- tracks/erlang/exercises/nucleotide-count/test/nucleotide_count_tests.erl
|
2606
2612
|
- tracks/erlang/exercises/parallel-letter-frequency/include/exercism.hrl
|
2607
2613
|
- tracks/erlang/exercises/parallel-letter-frequency/rebar.config
|
2608
2614
|
- tracks/erlang/exercises/parallel-letter-frequency/src/example.erl
|
@@ -2612,7 +2618,7 @@ files:
|
|
2612
2618
|
- tracks/erlang/exercises/phone-number/rebar.config
|
2613
2619
|
- tracks/erlang/exercises/phone-number/src/example.erl
|
2614
2620
|
- tracks/erlang/exercises/phone-number/src/phone_number.app.src
|
2615
|
-
- tracks/erlang/exercises/phone-number/test/
|
2621
|
+
- tracks/erlang/exercises/phone-number/test/phone_number_tests.erl
|
2616
2622
|
- tracks/erlang/exercises/rna-transcription/include/exercism.hrl
|
2617
2623
|
- tracks/erlang/exercises/rna-transcription/rebar.config
|
2618
2624
|
- tracks/erlang/exercises/rna-transcription/src/example.erl
|
@@ -4427,6 +4433,8 @@ files:
|
|
4427
4433
|
- tracks/julia/exercises/word-count/runtests.jl
|
4428
4434
|
- tracks/julia/exercises/word-count/word-count.jl
|
4429
4435
|
- tracks/julia/img/.keep
|
4436
|
+
- tracks/julia/img/logo.png
|
4437
|
+
- tracks/julia/img/logo.svg
|
4430
4438
|
- tracks/julia/runtests.jl
|
4431
4439
|
- tracks/kotlin/.git
|
4432
4440
|
- tracks/kotlin/.gitignore
|
@@ -6305,8 +6313,8 @@ files:
|
|
6305
6313
|
- tracks/r/docs/INSTALLATION.md
|
6306
6314
|
- tracks/r/docs/LEARNING.md
|
6307
6315
|
- tracks/r/docs/RESOURCES.md
|
6308
|
-
- tracks/r/docs/SETUP.md
|
6309
6316
|
- tracks/r/docs/TESTS.md
|
6317
|
+
- tracks/r/exercises/TRACK_HINTS.md
|
6310
6318
|
- tracks/r/exercises/anagram/anagram.R
|
6311
6319
|
- tracks/r/exercises/anagram/example.R
|
6312
6320
|
- tracks/r/exercises/anagram/test_anagram.R
|
data/tracks/r/docs/SETUP.md
DELETED
@@ -1,8 +0,0 @@
|
|
1
|
-
## Installation
|
2
|
-
See [this guide](https://github.com/exercism/xr/blob/master/docs/INSTALLATION.md) for instructions on how to setup your local R environment.
|
3
|
-
|
4
|
-
## How to implement your solution
|
5
|
-
In each problem folder, there is a file named `problem.R` containing a function that returns a `NULL` value. Place your implementation inside the body of the function.
|
6
|
-
|
7
|
-
## How to run tests
|
8
|
-
Inside of RStudio, simply execute the `test_problem.R` script. On the command-line, you can also run `Rscript test_problem.R`.
|