trackler 2.1.0.27 → 2.1.0.28
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/common/CONTRIBUTING.md +9 -349
- data/common/exercises/forth/canonical-data.json +1 -7
- data/lib/trackler/version.rb +1 -1
- data/tracks/bash/config.json +5 -0
- data/tracks/bash/exercises/anagram/anagram_tests.sh +99 -0
- data/tracks/bash/exercises/anagram/example.sh +23 -0
- data/tracks/delphi/config.json +8 -1
- data/tracks/delphi/exercises/two-fer/twofer.dpr +60 -0
- data/tracks/delphi/exercises/two-fer/utwoferExample.pas +17 -0
- data/tracks/delphi/exercises/two-fer/utwoferTest.pas +71 -0
- data/tracks/dlang/README.md +9 -5
- data/tracks/dlang/bin/test-exercise +14 -5
- data/tracks/dlang/docs/INSTALLATION.md +24 -0
- data/tracks/dlang/docs/TESTS.md +6 -6
- data/tracks/dlang/exercises/bob/dub.sdl +2 -0
- data/tracks/dlang/exercises/bob/{bob_example.d → example/bob.d} +0 -5
- data/tracks/dlang/exercises/bob/{bob.d → source/bob.d} +0 -5
- data/tracks/dlang/exercises/circular-buffer/dub.sdl +2 -0
- data/tracks/dlang/exercises/circular-buffer/{circular_buffer_example.d → example/circular_buffer.d} +0 -5
- data/tracks/dlang/exercises/circular-buffer/{circular_buffer.d → source/circular_buffer.d} +0 -5
- data/tracks/dlang/exercises/crypto-square/dub.sdl +2 -0
- data/tracks/dlang/exercises/crypto-square/{crypto_square_example.d → example/crypto_square.d} +0 -5
- data/tracks/dlang/exercises/crypto-square/{crypto_square.d → source/crypto_square.d} +0 -5
- data/tracks/dlang/exercises/difference-of-squares/dub.sdl +2 -0
- data/tracks/dlang/exercises/difference-of-squares/{difference_of_squares_example.d → example/difference_of_squares.d} +0 -2
- data/tracks/dlang/exercises/difference-of-squares/{difference_of_squares.d → source/difference_of_squares.d} +0 -2
- data/tracks/dlang/exercises/etl/dub.sdl +2 -0
- data/tracks/dlang/exercises/etl/{etl_example.d → example/etl.d} +0 -5
- data/tracks/dlang/exercises/etl/{etl.d → source/etl.d} +0 -5
- data/tracks/dlang/exercises/gigasecond/dub.sdl +2 -0
- data/tracks/dlang/exercises/gigasecond/{gigasecond_example.d → example/gigasecond.d} +0 -2
- data/tracks/dlang/exercises/gigasecond/{gigasecond.d → source/gigasecond.d} +0 -2
- data/tracks/dlang/exercises/hamming/dub.sdl +2 -0
- data/tracks/dlang/exercises/hamming/{hamming_example.d → example/hamming.d} +0 -5
- data/tracks/dlang/exercises/hamming/{hamming.d → source/hamming.d} +0 -5
- data/tracks/dlang/exercises/hello-world/dub.sdl +2 -0
- data/tracks/dlang/exercises/hello-world/{hello_world_example.d → example/hello_world.d} +0 -2
- data/tracks/dlang/exercises/hello-world/{hello_world.d → source/hello_world.d} +0 -0
- data/tracks/dlang/exercises/leap/dub.sdl +2 -0
- data/tracks/dlang/exercises/leap/{leap_example.d → example/leap.d} +0 -2
- data/tracks/dlang/exercises/leap/{leap.d → source/leap.d} +0 -2
- data/tracks/dlang/exercises/nucleotide-count/dub.sdl +2 -0
- data/tracks/dlang/exercises/nucleotide-count/{nucleotide_count_example.d → example/nucleotide_count.d} +0 -4
- data/tracks/dlang/exercises/nucleotide-count/{nucleotide_count.d → source/nucleotide_count.d} +0 -4
- data/tracks/dlang/exercises/pangram/dub.sdl +2 -0
- data/tracks/dlang/exercises/pangram/{pangram_example.d → example/pangram.d} +0 -2
- data/tracks/dlang/exercises/pangram/{pangram.d → source/pangram.d} +0 -2
- data/tracks/dlang/exercises/raindrops/dub.sdl +2 -0
- data/tracks/dlang/exercises/raindrops/{raindrops_example.d → example/raindrops.d} +0 -2
- data/tracks/dlang/exercises/raindrops/{raindrops.d → source/raindrops.d} +0 -2
- data/tracks/dlang/exercises/react/dub.sdl +2 -0
- data/tracks/dlang/exercises/react/{react_example.d → example/react.d} +0 -2
- data/tracks/dlang/exercises/react/{react.d → source/react.d} +0 -2
- data/tracks/dlang/exercises/rna-transcription/dub.sdl +2 -0
- data/tracks/dlang/exercises/rna-transcription/{rna_transcription_example.d → example/rna_transcription.d} +0 -2
- data/tracks/dlang/exercises/rna-transcription/{rna_transcription.d → source/rna_transcription.d} +0 -2
- data/tracks/dlang/exercises/robot-name/dub.sdl +2 -0
- data/tracks/dlang/exercises/robot-name/{robot_name_example.d → example/robot_name.d} +0 -5
- data/tracks/dlang/exercises/robot-name/{robot_name.d → source/robot_name.d} +0 -4
- data/tracks/dlang/exercises/roman-numerals/dub.sdl +2 -0
- data/tracks/dlang/exercises/roman-numerals/{roman_numerals_example.d → example/roman_numerals.d} +0 -4
- data/tracks/dlang/exercises/roman-numerals/{roman_numerals.d → source/roman_numerals.d} +0 -4
- data/tracks/dlang/exercises/series/dub.sdl +2 -0
- data/tracks/dlang/exercises/series/{series_example.d → example/series.d} +0 -5
- data/tracks/dlang/exercises/series/{series.d → source/series.d} +0 -5
- data/tracks/dlang/exercises/triangle/dub.sdl +2 -0
- data/tracks/dlang/exercises/triangle/{triangle_example.d → example/triangle.d} +0 -5
- data/tracks/dlang/exercises/triangle/{triangle.d → source/triangle.d} +0 -5
- data/tracks/elisp/.github/stale.yml +0 -0
- data/tracks/elisp/exercises/grains/grains-test.el +12 -12
- data/tracks/elisp/exercises/robot-name/robot-name-test.el +8 -19
- data/tracks/elisp/exercises/word-count/word-count-test.el +27 -27
- data/tracks/fortran/Makefile +3 -2
- data/tracks/fortran/config.json +21 -2
- data/tracks/fortran/exercises/difference-of-squares/difference_of_squares.fun +42 -0
- data/tracks/fortran/exercises/difference-of-squares/example.f90 +35 -0
- data/tracks/fortran/exercises/{hello_world → hello-world}/example.f90 +0 -0
- data/tracks/fortran/exercises/{hello_world → hello-world}/hello_world.fun +0 -0
- data/tracks/fortran/exercises/raindrops/example.f90 +26 -0
- data/tracks/fortran/exercises/raindrops/raindrops.fun +78 -0
- data/tracks/fortran/exercises/rna-transcription/example.f90 +27 -0
- data/tracks/fortran/exercises/rna-transcription/rna_transcription.fun +38 -0
- data/tracks/go/exercises/acronym/.meta/gen.go +51 -0
- data/tracks/go/exercises/acronym/acronym_test.go +1 -15
- data/tracks/go/exercises/acronym/cases_test.go +37 -0
- data/tracks/go/exercises/acronym/example.go +1 -1
- data/tracks/go/exercises/secret-handshake/.meta/gen.go +49 -0
- data/tracks/go/exercises/secret-handshake/cases_test.go +24 -0
- data/tracks/go/exercises/secret-handshake/example.go +1 -1
- data/tracks/go/exercises/secret-handshake/secret_handshake_test.go +1 -17
- data/tracks/java/config.json +23 -23
- data/tracks/java/exercises/book-store/src/example/java/{Bookstore.java → BookStore.java} +5 -12
- data/tracks/java/exercises/book-store/src/test/java/BookStoreTest.java +113 -0
- data/tracks/java/exercises/saddle-points/src/example/java/Matrix.java +5 -4
- data/tracks/java/exercises/saddle-points/src/example/java/MatrixCoordinate.java +5 -5
- data/tracks/java/exercises/saddle-points/src/main/java/MatrixCoordinate.java +5 -5
- data/tracks/java/exercises/saddle-points/src/test/java/MatrixTest.java +10 -10
- data/tracks/purescript/config.json +7 -0
- data/tracks/purescript/exercises/hamming/bower.json +16 -0
- data/tracks/purescript/exercises/hamming/examples/src/Hamming.purs +14 -0
- data/tracks/purescript/exercises/hamming/test/Main.purs +46 -0
- data/tracks/scala/config.json +7 -0
- data/tracks/scala/exercises/bob/example.scala +3 -3
- data/tracks/scala/exercises/bob/src/main/scala/Bob.scala +2 -2
- data/tracks/scala/exercises/bob/src/test/scala/BobTest.scala +83 -53
- data/tracks/scala/exercises/book-store/build.sbt +3 -0
- data/tracks/scala/exercises/book-store/example.scala +49 -0
- data/tracks/scala/exercises/book-store/src/main/scala/.keep +0 -0
- data/tracks/scala/exercises/book-store/src/test/scala/BookStoreTest.scala +70 -0
- data/tracks/scala/exercises/difference-of-squares/example.scala +3 -3
- data/tracks/scala/exercises/difference-of-squares/src/main/scala/DifferenceOfSquares.scala +8 -0
- data/tracks/scala/exercises/difference-of-squares/src/test/scala/DifferenceOfSquaresTest.scala +49 -0
- data/tracks/scala/exercises/leap/example.scala +4 -3
- data/tracks/scala/exercises/leap/src/main/scala/Leap.scala +2 -2
- data/tracks/scala/exercises/leap/src/test/scala/LeapTest.scala +12 -20
- data/tracks/scala/exercises/raindrops/src/test/scala/RaindropsTest.scala +46 -35
- data/tracks/scala/testgen/src/main/scala/BobTestGenerator.scala +15 -0
- data/tracks/scala/testgen/src/main/scala/BookStoreTestGenerator.scala +15 -0
- data/tracks/scala/testgen/src/main/scala/DifferenceOfSquaresTestGenerator.scala +17 -0
- data/tracks/scala/testgen/src/main/scala/LeapTestGenerator.scala +15 -0
- data/tracks/scala/testgen/src/main/scala/RaindropsTestGenerator.scala +15 -0
- data/tracks/vimscript/config.json +5 -0
- data/tracks/vimscript/exercises/triangle/example.vim +28 -0
- data/tracks/vimscript/exercises/triangle/triangle.vader +92 -0
- data/tracks/vimscript/exercises/triangle/triangle.vim +24 -0
- metadata +93 -44
- data/tracks/java/exercises/book-store/src/test/java/BookstoreTest.java +0 -119
- data/tracks/scala/exercises/difference-of-squares/src/main/scala/Squares.scala +0 -8
- data/tracks/scala/exercises/difference-of-squares/src/test/scala/SquaresTest.scala +0 -56
@@ -0,0 +1,24 @@
|
|
1
|
+
"
|
2
|
+
" Determine if a triangle is equilateral, isosceles, or scalene.
|
3
|
+
"
|
4
|
+
" An equilateral triangle has all three sides the same length.
|
5
|
+
"
|
6
|
+
" An isosceles triangle has at least two sides the same length.
|
7
|
+
" (It is sometimes specified as having exactly two sides the
|
8
|
+
" same length, but for the purposes of this exercise we'll say
|
9
|
+
" at least two.)
|
10
|
+
"
|
11
|
+
" A scalene triangle has all sides of different lengths.
|
12
|
+
"
|
13
|
+
|
14
|
+
function! Equilateral(triangle) abort
|
15
|
+
" your code goes here
|
16
|
+
endfunction
|
17
|
+
|
18
|
+
function! Isosceles(triangle) abort
|
19
|
+
" your code goes here
|
20
|
+
endfunction
|
21
|
+
|
22
|
+
function! Scalene(triangle) abort
|
23
|
+
" your code goes here
|
24
|
+
endfunction
|
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.1.0.
|
4
|
+
version: 2.1.0.28
|
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-06-
|
11
|
+
date: 2017-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -556,6 +556,8 @@ files:
|
|
556
556
|
- tracks/bash/docs/LEARNING.md
|
557
557
|
- tracks/bash/docs/RESOURCES.md
|
558
558
|
- tracks/bash/docs/TESTS.md
|
559
|
+
- tracks/bash/exercises/anagram/anagram_tests.sh
|
560
|
+
- tracks/bash/exercises/anagram/example.sh
|
559
561
|
- tracks/bash/exercises/bob/bob_test.sh
|
560
562
|
- tracks/bash/exercises/bob/example.sh
|
561
563
|
- tracks/bash/exercises/gigasecond/example.sh
|
@@ -2074,6 +2076,9 @@ files:
|
|
2074
2076
|
- tracks/delphi/exercises/triangle/Triangle.dpr
|
2075
2077
|
- tracks/delphi/exercises/triangle/uTestTriangle.pas
|
2076
2078
|
- tracks/delphi/exercises/triangle/uTriangleExample.pas
|
2079
|
+
- tracks/delphi/exercises/two-fer/twofer.dpr
|
2080
|
+
- tracks/delphi/exercises/two-fer/utwoferExample.pas
|
2081
|
+
- tracks/delphi/exercises/two-fer/utwoferTest.pas
|
2077
2082
|
- tracks/delphi/img/.keep
|
2078
2083
|
- tracks/delphi/img/icon.png
|
2079
2084
|
- tracks/dlang/.git
|
@@ -2091,42 +2096,60 @@ files:
|
|
2091
2096
|
- tracks/dlang/docs/LEARNING.md
|
2092
2097
|
- tracks/dlang/docs/RESOURCES.md
|
2093
2098
|
- tracks/dlang/docs/TESTS.md
|
2094
|
-
- tracks/dlang/exercises/bob/
|
2095
|
-
- tracks/dlang/exercises/bob/
|
2096
|
-
- tracks/dlang/exercises/
|
2097
|
-
- tracks/dlang/exercises/circular-buffer/
|
2098
|
-
- tracks/dlang/exercises/
|
2099
|
-
- tracks/dlang/exercises/
|
2100
|
-
- tracks/dlang/exercises/
|
2101
|
-
- tracks/dlang/exercises/
|
2102
|
-
- tracks/dlang/exercises/
|
2103
|
-
- tracks/dlang/exercises/
|
2104
|
-
- tracks/dlang/exercises/
|
2105
|
-
- tracks/dlang/exercises/
|
2106
|
-
- tracks/dlang/exercises/
|
2107
|
-
- tracks/dlang/exercises/
|
2108
|
-
- tracks/dlang/exercises/
|
2109
|
-
- tracks/dlang/exercises/
|
2110
|
-
- tracks/dlang/exercises/
|
2111
|
-
- tracks/dlang/exercises/
|
2112
|
-
- tracks/dlang/exercises/
|
2113
|
-
- tracks/dlang/exercises/
|
2114
|
-
- tracks/dlang/exercises/
|
2115
|
-
- tracks/dlang/exercises/
|
2116
|
-
- tracks/dlang/exercises/
|
2117
|
-
- tracks/dlang/exercises/
|
2118
|
-
- tracks/dlang/exercises/
|
2119
|
-
- tracks/dlang/exercises/
|
2120
|
-
- tracks/dlang/exercises/
|
2121
|
-
- tracks/dlang/exercises/
|
2122
|
-
- tracks/dlang/exercises/
|
2123
|
-
- tracks/dlang/exercises/
|
2124
|
-
- tracks/dlang/exercises/
|
2125
|
-
- tracks/dlang/exercises/
|
2126
|
-
- tracks/dlang/exercises/
|
2127
|
-
- tracks/dlang/exercises/
|
2128
|
-
- tracks/dlang/exercises/
|
2129
|
-
- tracks/dlang/exercises/
|
2099
|
+
- tracks/dlang/exercises/bob/dub.sdl
|
2100
|
+
- tracks/dlang/exercises/bob/example/bob.d
|
2101
|
+
- tracks/dlang/exercises/bob/source/bob.d
|
2102
|
+
- tracks/dlang/exercises/circular-buffer/dub.sdl
|
2103
|
+
- tracks/dlang/exercises/circular-buffer/example/circular_buffer.d
|
2104
|
+
- tracks/dlang/exercises/circular-buffer/source/circular_buffer.d
|
2105
|
+
- tracks/dlang/exercises/crypto-square/dub.sdl
|
2106
|
+
- tracks/dlang/exercises/crypto-square/example/crypto_square.d
|
2107
|
+
- tracks/dlang/exercises/crypto-square/source/crypto_square.d
|
2108
|
+
- tracks/dlang/exercises/difference-of-squares/dub.sdl
|
2109
|
+
- tracks/dlang/exercises/difference-of-squares/example/difference_of_squares.d
|
2110
|
+
- tracks/dlang/exercises/difference-of-squares/source/difference_of_squares.d
|
2111
|
+
- tracks/dlang/exercises/etl/dub.sdl
|
2112
|
+
- tracks/dlang/exercises/etl/example/etl.d
|
2113
|
+
- tracks/dlang/exercises/etl/source/etl.d
|
2114
|
+
- tracks/dlang/exercises/gigasecond/dub.sdl
|
2115
|
+
- tracks/dlang/exercises/gigasecond/example/gigasecond.d
|
2116
|
+
- tracks/dlang/exercises/gigasecond/source/gigasecond.d
|
2117
|
+
- tracks/dlang/exercises/hamming/dub.sdl
|
2118
|
+
- tracks/dlang/exercises/hamming/example/hamming.d
|
2119
|
+
- tracks/dlang/exercises/hamming/source/hamming.d
|
2120
|
+
- tracks/dlang/exercises/hello-world/dub.sdl
|
2121
|
+
- tracks/dlang/exercises/hello-world/example/hello_world.d
|
2122
|
+
- tracks/dlang/exercises/hello-world/source/hello_world.d
|
2123
|
+
- tracks/dlang/exercises/leap/dub.sdl
|
2124
|
+
- tracks/dlang/exercises/leap/example/leap.d
|
2125
|
+
- tracks/dlang/exercises/leap/source/leap.d
|
2126
|
+
- tracks/dlang/exercises/nucleotide-count/dub.sdl
|
2127
|
+
- tracks/dlang/exercises/nucleotide-count/example/nucleotide_count.d
|
2128
|
+
- tracks/dlang/exercises/nucleotide-count/source/nucleotide_count.d
|
2129
|
+
- tracks/dlang/exercises/pangram/dub.sdl
|
2130
|
+
- tracks/dlang/exercises/pangram/example/pangram.d
|
2131
|
+
- tracks/dlang/exercises/pangram/source/pangram.d
|
2132
|
+
- tracks/dlang/exercises/raindrops/dub.sdl
|
2133
|
+
- tracks/dlang/exercises/raindrops/example/raindrops.d
|
2134
|
+
- tracks/dlang/exercises/raindrops/source/raindrops.d
|
2135
|
+
- tracks/dlang/exercises/react/dub.sdl
|
2136
|
+
- tracks/dlang/exercises/react/example/react.d
|
2137
|
+
- tracks/dlang/exercises/react/source/react.d
|
2138
|
+
- tracks/dlang/exercises/rna-transcription/dub.sdl
|
2139
|
+
- tracks/dlang/exercises/rna-transcription/example/rna_transcription.d
|
2140
|
+
- tracks/dlang/exercises/rna-transcription/source/rna_transcription.d
|
2141
|
+
- tracks/dlang/exercises/robot-name/dub.sdl
|
2142
|
+
- tracks/dlang/exercises/robot-name/example/robot_name.d
|
2143
|
+
- tracks/dlang/exercises/robot-name/source/robot_name.d
|
2144
|
+
- tracks/dlang/exercises/roman-numerals/dub.sdl
|
2145
|
+
- tracks/dlang/exercises/roman-numerals/example/roman_numerals.d
|
2146
|
+
- tracks/dlang/exercises/roman-numerals/source/roman_numerals.d
|
2147
|
+
- tracks/dlang/exercises/series/dub.sdl
|
2148
|
+
- tracks/dlang/exercises/series/example/series.d
|
2149
|
+
- tracks/dlang/exercises/series/source/series.d
|
2150
|
+
- tracks/dlang/exercises/triangle/dub.sdl
|
2151
|
+
- tracks/dlang/exercises/triangle/example/triangle.d
|
2152
|
+
- tracks/dlang/exercises/triangle/source/triangle.d
|
2130
2153
|
- tracks/dlang/img/icon.png
|
2131
2154
|
- tracks/ecmascript/.editorconfig
|
2132
2155
|
- tracks/ecmascript/.git
|
@@ -2355,6 +2378,7 @@ files:
|
|
2355
2378
|
- tracks/ecmascript/package.json
|
2356
2379
|
- tracks/ecmascript/yarn.lock
|
2357
2380
|
- tracks/elisp/.git
|
2381
|
+
- tracks/elisp/.github/stale.yml
|
2358
2382
|
- tracks/elisp/.gitignore
|
2359
2383
|
- tracks/elisp/.travis.yml
|
2360
2384
|
- tracks/elisp/LICENSE
|
@@ -3154,10 +3178,16 @@ files:
|
|
3154
3178
|
- tracks/fortran/exercises/TRACK_HINTS.md
|
3155
3179
|
- tracks/fortran/exercises/bob/bob.fun
|
3156
3180
|
- tracks/fortran/exercises/bob/example.f90
|
3181
|
+
- tracks/fortran/exercises/difference-of-squares/difference_of_squares.fun
|
3182
|
+
- tracks/fortran/exercises/difference-of-squares/example.f90
|
3157
3183
|
- tracks/fortran/exercises/hamming/example.f90
|
3158
3184
|
- tracks/fortran/exercises/hamming/hamming.fun
|
3159
|
-
- tracks/fortran/exercises/
|
3160
|
-
- tracks/fortran/exercises/
|
3185
|
+
- tracks/fortran/exercises/hello-world/example.f90
|
3186
|
+
- tracks/fortran/exercises/hello-world/hello_world.fun
|
3187
|
+
- tracks/fortran/exercises/raindrops/example.f90
|
3188
|
+
- tracks/fortran/exercises/raindrops/raindrops.fun
|
3189
|
+
- tracks/fortran/exercises/rna-transcription/example.f90
|
3190
|
+
- tracks/fortran/exercises/rna-transcription/rna_transcription.fun
|
3161
3191
|
- tracks/fortran/img/.keep
|
3162
3192
|
- tracks/fsharp/.git
|
3163
3193
|
- tracks/fsharp/.gitignore
|
@@ -3443,8 +3473,10 @@ files:
|
|
3443
3473
|
- tracks/go/exercises/accumulate/accumulate.go
|
3444
3474
|
- tracks/go/exercises/accumulate/accumulate_test.go
|
3445
3475
|
- tracks/go/exercises/accumulate/example.go
|
3476
|
+
- tracks/go/exercises/acronym/.meta/gen.go
|
3446
3477
|
- tracks/go/exercises/acronym/acronym.go
|
3447
3478
|
- tracks/go/exercises/acronym/acronym_test.go
|
3479
|
+
- tracks/go/exercises/acronym/cases_test.go
|
3448
3480
|
- tracks/go/exercises/acronym/example.go
|
3449
3481
|
- tracks/go/exercises/all-your-base/all_your_base_test.go
|
3450
3482
|
- tracks/go/exercises/all-your-base/example.go
|
@@ -3655,6 +3687,8 @@ files:
|
|
3655
3687
|
- tracks/go/exercises/scrabble-score/cases_test.go
|
3656
3688
|
- tracks/go/exercises/scrabble-score/example.go
|
3657
3689
|
- tracks/go/exercises/scrabble-score/scrabble_score_test.go
|
3690
|
+
- tracks/go/exercises/secret-handshake/.meta/gen.go
|
3691
|
+
- tracks/go/exercises/secret-handshake/cases_test.go
|
3658
3692
|
- tracks/go/exercises/secret-handshake/example.go
|
3659
3693
|
- tracks/go/exercises/secret-handshake/secret_handshake_test.go
|
3660
3694
|
- tracks/go/exercises/series/asktoomuch_test.go
|
@@ -4436,10 +4470,10 @@ files:
|
|
4436
4470
|
- tracks/java/exercises/bob/src/test/java/BobTest.java
|
4437
4471
|
- tracks/java/exercises/book-store/build.gradle
|
4438
4472
|
- tracks/java/exercises/book-store/src/example/java/.keep
|
4439
|
-
- tracks/java/exercises/book-store/src/example/java/
|
4473
|
+
- tracks/java/exercises/book-store/src/example/java/BookStore.java
|
4440
4474
|
- tracks/java/exercises/book-store/src/main/java/.keep
|
4441
4475
|
- tracks/java/exercises/book-store/src/test/java/.keep
|
4442
|
-
- tracks/java/exercises/book-store/src/test/java/
|
4476
|
+
- tracks/java/exercises/book-store/src/test/java/BookStoreTest.java
|
4443
4477
|
- tracks/java/exercises/bracket-push/build.gradle
|
4444
4478
|
- tracks/java/exercises/bracket-push/src/example/java/BracketChecker.java
|
4445
4479
|
- tracks/java/exercises/bracket-push/src/main/java/BracketChecker.java
|
@@ -6855,6 +6889,9 @@ files:
|
|
6855
6889
|
- tracks/purescript/exercises/etl/examples/src/Etl.purs
|
6856
6890
|
- tracks/purescript/exercises/etl/src/Etl.purs
|
6857
6891
|
- tracks/purescript/exercises/etl/test/Main.purs
|
6892
|
+
- tracks/purescript/exercises/hamming/bower.json
|
6893
|
+
- tracks/purescript/exercises/hamming/examples/src/Hamming.purs
|
6894
|
+
- tracks/purescript/exercises/hamming/test/Main.purs
|
6858
6895
|
- tracks/purescript/exercises/hello-world/bower.json
|
6859
6896
|
- tracks/purescript/exercises/hello-world/examples/src/HelloWorld.purs
|
6860
6897
|
- tracks/purescript/exercises/hello-world/src/HelloWorld.purs
|
@@ -8119,6 +8156,10 @@ files:
|
|
8119
8156
|
- tracks/scala/exercises/bob/example.scala
|
8120
8157
|
- tracks/scala/exercises/bob/src/main/scala/Bob.scala
|
8121
8158
|
- tracks/scala/exercises/bob/src/test/scala/BobTest.scala
|
8159
|
+
- tracks/scala/exercises/book-store/build.sbt
|
8160
|
+
- tracks/scala/exercises/book-store/example.scala
|
8161
|
+
- tracks/scala/exercises/book-store/src/main/scala/.keep
|
8162
|
+
- tracks/scala/exercises/book-store/src/test/scala/BookStoreTest.scala
|
8122
8163
|
- tracks/scala/exercises/bowling/Example.scala
|
8123
8164
|
- tracks/scala/exercises/bowling/build.sbt
|
8124
8165
|
- tracks/scala/exercises/bowling/src/main/scala/Bowling.scala
|
@@ -8151,8 +8192,8 @@ files:
|
|
8151
8192
|
- tracks/scala/exercises/custom-set/src/test/scala/CustomSetTest.scala
|
8152
8193
|
- tracks/scala/exercises/difference-of-squares/build.sbt
|
8153
8194
|
- tracks/scala/exercises/difference-of-squares/example.scala
|
8154
|
-
- tracks/scala/exercises/difference-of-squares/src/main/scala/
|
8155
|
-
- tracks/scala/exercises/difference-of-squares/src/test/scala/
|
8195
|
+
- tracks/scala/exercises/difference-of-squares/src/main/scala/DifferenceOfSquares.scala
|
8196
|
+
- tracks/scala/exercises/difference-of-squares/src/test/scala/DifferenceOfSquaresTest.scala
|
8156
8197
|
- tracks/scala/exercises/dominoes/Example.scala
|
8157
8198
|
- tracks/scala/exercises/dominoes/build.sbt
|
8158
8199
|
- tracks/scala/exercises/dominoes/src/main/scala/Dominoes.scala
|
@@ -8431,15 +8472,20 @@ files:
|
|
8431
8472
|
- tracks/scala/testgen/src/main/scala/AllYourBaseTestGenerator.scala
|
8432
8473
|
- tracks/scala/testgen/src/main/scala/BeerSongTestGenerator.scala
|
8433
8474
|
- tracks/scala/testgen/src/main/scala/BinarySearchTestGenerator.scala
|
8475
|
+
- tracks/scala/testgen/src/main/scala/BobTestGenerator.scala
|
8476
|
+
- tracks/scala/testgen/src/main/scala/BookStoreTestGenerator.scala
|
8434
8477
|
- tracks/scala/testgen/src/main/scala/BowlingTestGenerator.scala
|
8435
8478
|
- tracks/scala/testgen/src/main/scala/BracketPushTestGenerator.scala
|
8436
8479
|
- tracks/scala/testgen/src/main/scala/CustomSetTestGenerator.scala
|
8480
|
+
- tracks/scala/testgen/src/main/scala/DifferenceOfSquaresTestGenerator.scala
|
8437
8481
|
- tracks/scala/testgen/src/main/scala/FoodChainTestGenerator.scala
|
8438
8482
|
- tracks/scala/testgen/src/main/scala/HelloWorldTestGenerator.scala
|
8439
8483
|
- tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
|
8484
|
+
- tracks/scala/testgen/src/main/scala/LeapTestGenerator.scala
|
8440
8485
|
- tracks/scala/testgen/src/main/scala/NucleotideCountTestGenerator.scala
|
8441
8486
|
- tracks/scala/testgen/src/main/scala/PangramsTestGenerator.scala
|
8442
8487
|
- tracks/scala/testgen/src/main/scala/RailFenceCipherTestGenerator.scala
|
8488
|
+
- tracks/scala/testgen/src/main/scala/RaindropsTestGenerator.scala
|
8443
8489
|
- tracks/scala/testgen/src/main/scala/SumOfMultiplesTestGenerator.scala
|
8444
8490
|
- tracks/scala/testgen/src/main/scala/TestBuilder.scala
|
8445
8491
|
- tracks/scala/testgen/src/main/scala/VariableLengthQuantityTestGenerator.scala
|
@@ -9256,6 +9302,9 @@ files:
|
|
9256
9302
|
- tracks/vimscript/exercises/scrabble-score/example.vim
|
9257
9303
|
- tracks/vimscript/exercises/scrabble-score/scrabble_score.vader
|
9258
9304
|
- tracks/vimscript/exercises/scrabble-score/scrabble_score.vim
|
9305
|
+
- tracks/vimscript/exercises/triangle/example.vim
|
9306
|
+
- tracks/vimscript/exercises/triangle/triangle.vader
|
9307
|
+
- tracks/vimscript/exercises/triangle/triangle.vim
|
9259
9308
|
- tracks/vimscript/exercises/word-count/example.vim
|
9260
9309
|
- tracks/vimscript/exercises/word-count/word_count.vader
|
9261
9310
|
- tracks/vimscript/exercises/word-count/word_count.vim
|
@@ -1,119 +0,0 @@
|
|
1
|
-
import static org.junit.Assert.assertEquals;
|
2
|
-
|
3
|
-
import java.util.Collections;
|
4
|
-
import java.util.List;
|
5
|
-
import java.util.ArrayList;
|
6
|
-
import java.util.Arrays;
|
7
|
-
|
8
|
-
import org.junit.Ignore;
|
9
|
-
import org.junit.Test;
|
10
|
-
|
11
|
-
public class BookstoreTest {
|
12
|
-
|
13
|
-
// This is sufficient accuracy since we're handling currency values, which should be equal to within 2 decimal places.
|
14
|
-
private static final double EQUALITY_TOLERANCE = 0.001;
|
15
|
-
|
16
|
-
@Test
|
17
|
-
public void onlyASingleBook() {
|
18
|
-
List<Integer> books = new ArrayList<>(Collections.singletonList(1));
|
19
|
-
Bookstore bookstore = new Bookstore(books);
|
20
|
-
assertEquals(8, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
21
|
-
}
|
22
|
-
|
23
|
-
@Ignore("Remove to run test")
|
24
|
-
@Test
|
25
|
-
public void twoOfSameBook() {
|
26
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1));
|
27
|
-
Bookstore bookstore = new Bookstore(books);
|
28
|
-
assertEquals(16, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
29
|
-
}
|
30
|
-
|
31
|
-
@Ignore("Remove to run test")
|
32
|
-
@Test
|
33
|
-
public void emptyBasket() {
|
34
|
-
List<Integer> books = new ArrayList<>();
|
35
|
-
Bookstore bookstore = new Bookstore(books);
|
36
|
-
assertEquals(0, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
37
|
-
}
|
38
|
-
|
39
|
-
@Ignore("Remove to run test")
|
40
|
-
@Test
|
41
|
-
public void twoDifferentBooks() {
|
42
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 2));
|
43
|
-
Bookstore bookstore = new Bookstore(books);
|
44
|
-
assertEquals(15.20, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
45
|
-
}
|
46
|
-
|
47
|
-
@Ignore("Remove to run test")
|
48
|
-
@Test
|
49
|
-
public void threeDifferentBooks() {
|
50
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 2, 3));
|
51
|
-
Bookstore bookstore = new Bookstore(books);
|
52
|
-
assertEquals(21.6, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
53
|
-
}
|
54
|
-
|
55
|
-
@Ignore("Remove to run test")
|
56
|
-
@Test
|
57
|
-
public void fourDifferentBooks() {
|
58
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 2, 3, 4));
|
59
|
-
Bookstore bookstore = new Bookstore(books);
|
60
|
-
assertEquals(25.6, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
61
|
-
}
|
62
|
-
|
63
|
-
@Ignore("Remove to run test")
|
64
|
-
@Test
|
65
|
-
public void fiveDifferentBooks() {
|
66
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
|
67
|
-
Bookstore bookstore = new Bookstore(books);
|
68
|
-
assertEquals(30, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
69
|
-
}
|
70
|
-
|
71
|
-
@Ignore("Remove to run test")
|
72
|
-
@Test
|
73
|
-
public void twoGroupsOfFourIsCheaperThanGroupOfFivePlusGroupOfThree() {
|
74
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1, 2, 2, 3, 3, 4, 5));
|
75
|
-
Bookstore bookstore = new Bookstore(books);
|
76
|
-
assertEquals(51.20, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
77
|
-
}
|
78
|
-
|
79
|
-
@Ignore("Remove to run test")
|
80
|
-
@Test
|
81
|
-
public void groupOfFourPlusGroupOfTwoIsCheaperThanTwoGroupsOfThree() {
|
82
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1, 2, 2, 3, 4));
|
83
|
-
Bookstore bookstore = new Bookstore(books);
|
84
|
-
assertEquals(40.8, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
85
|
-
}
|
86
|
-
|
87
|
-
@Ignore("Remove to run test")
|
88
|
-
@Test
|
89
|
-
public void twoEachOfFirst4BooksAnd1CopyEachOfRest() {
|
90
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1, 2, 2, 3, 3, 4, 4, 5));
|
91
|
-
Bookstore bookstore = new Bookstore(books);
|
92
|
-
assertEquals(55.60, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
93
|
-
}
|
94
|
-
|
95
|
-
@Ignore("Remove to run test")
|
96
|
-
@Test
|
97
|
-
public void twoCopiesOfEachBook() {
|
98
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1, 2, 2, 3, 3, 4, 4, 5, 5));
|
99
|
-
Bookstore bookstore = new Bookstore(books);
|
100
|
-
assertEquals(60.00, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
101
|
-
}
|
102
|
-
|
103
|
-
@Ignore("Remove to run test")
|
104
|
-
@Test
|
105
|
-
public void threeCopiesOfFirstBookAnd2EachOfRemaining() {
|
106
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 1));
|
107
|
-
Bookstore bookstore = new Bookstore(books);
|
108
|
-
assertEquals(68.00, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
109
|
-
}
|
110
|
-
|
111
|
-
@Ignore("Remove to run test")
|
112
|
-
@Test
|
113
|
-
public void threeEachOFirst2BooksAnd2EachOfRemainingBooks() {
|
114
|
-
List<Integer> books = new ArrayList<>(Arrays.asList(1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 1, 2));
|
115
|
-
Bookstore bookstore = new Bookstore(books);
|
116
|
-
assertEquals(75.20, bookstore.calculateTotalCost(), EQUALITY_TOLERANCE);
|
117
|
-
}
|
118
|
-
|
119
|
-
}
|
@@ -1,56 +0,0 @@
|
|
1
|
-
import org.scalatest.{Matchers, FlatSpec}
|
2
|
-
|
3
|
-
class SquaresTest extends FlatSpec with Matchers {
|
4
|
-
it should "calc square of sums to 5" in {
|
5
|
-
val result = Squares.squareOfSums(5)
|
6
|
-
result should equal (225)
|
7
|
-
}
|
8
|
-
|
9
|
-
it should "calc sum of squares to 5" in {
|
10
|
-
pending
|
11
|
-
val result = Squares.sumOfSquares(5)
|
12
|
-
result should equal (55)
|
13
|
-
}
|
14
|
-
|
15
|
-
it should "calc difference of sums to 5" in {
|
16
|
-
pending
|
17
|
-
val result = Squares.difference(5)
|
18
|
-
result should equal (170)
|
19
|
-
}
|
20
|
-
|
21
|
-
it should "calc square of sums to 10" in {
|
22
|
-
pending
|
23
|
-
val result = Squares.squareOfSums(10)
|
24
|
-
result should equal (3025)
|
25
|
-
}
|
26
|
-
|
27
|
-
it should "calc sum of squares to 10" in {
|
28
|
-
pending
|
29
|
-
val result = Squares.sumOfSquares(10)
|
30
|
-
result should equal (385)
|
31
|
-
}
|
32
|
-
|
33
|
-
it should "calc difference of sums to 10" in {
|
34
|
-
pending
|
35
|
-
val result = Squares.difference(10)
|
36
|
-
result should equal (2640)
|
37
|
-
}
|
38
|
-
|
39
|
-
it should "calc square of sums to 100" in {
|
40
|
-
pending
|
41
|
-
val result = Squares.squareOfSums(100)
|
42
|
-
result should equal (25502500)
|
43
|
-
}
|
44
|
-
|
45
|
-
it should "calc sum of squares to 100" in {
|
46
|
-
pending
|
47
|
-
val result = Squares.sumOfSquares(100)
|
48
|
-
result should equal (338350)
|
49
|
-
}
|
50
|
-
|
51
|
-
it should "calc difference of sums to 100" in {
|
52
|
-
pending
|
53
|
-
val result = Squares.difference(100)
|
54
|
-
result should equal (25164150)
|
55
|
-
}
|
56
|
-
}
|