trackler 2.0.5.0 → 2.0.5.1
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/crystal/exercises/largest-series-product/spec/largest_series_product_spec.cr +32 -16
- data/tracks/fsharp/exercises/grep/GrepTest.fs +2 -1
- data/tracks/fsharp/exercises/linked-list/Example.fs +24 -17
- data/tracks/fsharp/exercises/linked-list/HINTS.md +14 -0
- data/tracks/fsharp/exercises/linked-list/LinkedListTest.fs +73 -80
- data/tracks/lua/config.json +8 -0
- data/tracks/lua/exercises/meetup/example.lua +61 -0
- data/tracks/lua/exercises/meetup/meetup_spec.lua +858 -0
- data/tracks/purescript/.travis.yml +4 -0
- data/tracks/purescript/config.json +7 -0
- data/tracks/purescript/exercises/bob/bower.json +17 -0
- data/tracks/purescript/exercises/bob/examples/src/Bob.purs +49 -0
- data/tracks/purescript/exercises/bob/src/Bob.purs +3 -0
- data/tracks/purescript/exercises/bob/test/Main.purs +82 -0
- data/tracks/ruby/.gitignore +1 -0
- data/tracks/ruby/Gemfile +2 -0
- data/tracks/ruby/Rakefile +6 -0
- data/tracks/ruby/bin/executable-tests-check +1 -1
- data/tracks/ruby/config.json +2 -1
- data/tracks/ruby/lib/generator.rb +8 -3
- data/tracks/ruby/test/generator_test.rb +21 -0
- data/tracks/ruby/test/test_helper.rb +16 -0
- data/tracks/scala/config.json +17 -0
- data/tracks/scala/exercises/allergies/example.scala +1 -5
- data/tracks/scala/exercises/allergies/src/main/scala/Allergies.scala +11 -0
- data/tracks/scala/exercises/allergies/src/test/scala/AllergiesTest.scala +14 -14
- data/tracks/scala/exercises/atbash-cipher/example.scala +4 -4
- data/tracks/scala/exercises/atbash-cipher/src/main/scala/Atbash.scala +3 -0
- data/tracks/scala/exercises/atbash-cipher/src/test/scala/atbash_test.scala +9 -9
- data/tracks/scala/exercises/crypto-square/example.scala +1 -1
- data/tracks/scala/exercises/crypto-square/src/main/scala/CryptoSquare.scala +11 -0
- data/tracks/scala/exercises/crypto-square/src/test/scala/CryptoSquareTest.scala +17 -17
- data/tracks/scala/exercises/queen-attack/example.scala +2 -1
- data/tracks/scala/exercises/queen-attack/src/main/scala/Queens.scala +8 -0
- data/tracks/scala/exercises/queen-attack/src/test/scala/QueensTest.scala +9 -9
- data/tracks/scala/exercises/raindrops/example.scala +1 -5
- data/tracks/scala/exercises/raindrops/src/main/scala/Raindrops.scala +4 -0
- data/tracks/scala/exercises/raindrops/src/test/scala/RaindropsTest.scala +16 -16
- data/tracks/swift/README.md +16 -16
- metadata +16 -1
@@ -1,9 +1,9 @@
|
|
1
|
-
|
2
|
-
def encode(s: String): String =
|
3
|
-
s.foldLeft("")((acc, c) => acc + substitute(c)).grouped(5).mkString(" ")
|
4
|
-
|
1
|
+
object Atbash {
|
5
2
|
private def substitute(c: Char) =
|
6
3
|
if (c.isDigit) c.toString
|
7
4
|
else if (c.isLetter) ('a' + ('z' - c.toLower)).toChar.toString
|
8
5
|
else ""
|
6
|
+
|
7
|
+
def encode(s: String): String =
|
8
|
+
s.foldLeft("")((acc, c) => acc + substitute(c)).grouped(5).mkString(" ")
|
9
9
|
}
|
@@ -2,47 +2,47 @@ import org.scalatest.{Matchers, FlatSpec}
|
|
2
2
|
|
3
3
|
class AtbashTest extends FlatSpec with Matchers {
|
4
4
|
it should "encode no" in {
|
5
|
-
Atbash
|
5
|
+
Atbash.encode("no") should equal("ml")
|
6
6
|
}
|
7
7
|
|
8
8
|
it should "encode yes" in {
|
9
9
|
pending
|
10
|
-
Atbash
|
10
|
+
Atbash.encode("yes") should equal("bvh")
|
11
11
|
}
|
12
12
|
|
13
13
|
it should "encode OMG" in {
|
14
14
|
pending
|
15
|
-
Atbash
|
15
|
+
Atbash.encode("OMG") should equal("lnt")
|
16
16
|
}
|
17
17
|
|
18
18
|
it should "encode lowercase omg" in {
|
19
19
|
pending
|
20
|
-
Atbash
|
20
|
+
Atbash.encode("omg") should equal("lnt")
|
21
21
|
}
|
22
22
|
|
23
23
|
it should "encode O M G" in {
|
24
24
|
pending
|
25
|
-
Atbash
|
25
|
+
Atbash.encode("O M G ") should equal("lnt")
|
26
26
|
}
|
27
27
|
|
28
28
|
it should "encode and group string " in {
|
29
29
|
pending
|
30
|
-
Atbash
|
30
|
+
Atbash.encode("mindblowingly") should equal("nrmwy oldrm tob")
|
31
31
|
}
|
32
32
|
|
33
33
|
it should "encode string with digits and punctuation" in {
|
34
34
|
pending
|
35
|
-
Atbash
|
35
|
+
Atbash.encode("Testing, 1 2 3, testing. ") should equal("gvhgr mt123 gvhgr mt")
|
36
36
|
}
|
37
37
|
|
38
38
|
it should "encode \"Truth is fiction.\"" in {
|
39
39
|
pending
|
40
|
-
Atbash
|
40
|
+
Atbash.encode("Truth is fiction.") should equal("gifgs rhurx grlm")
|
41
41
|
}
|
42
42
|
|
43
43
|
it should "encode a long string" in {
|
44
44
|
pending
|
45
|
-
Atbash
|
45
|
+
Atbash.encode("The quick brown fox jumps over the lazy dog.") should
|
46
46
|
equal("gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt")
|
47
47
|
}
|
48
48
|
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
object CryptoSquare {
|
2
|
+
def normalizePlaintext(text: String): String = ???
|
3
|
+
|
4
|
+
def squareSize(text: String): Int = ???
|
5
|
+
|
6
|
+
def plaintextSegments(text: String): List[String] = ???
|
7
|
+
|
8
|
+
def ciphertext(text: String): String = ???
|
9
|
+
|
10
|
+
def normalizedCiphertext(text: String): String = ???
|
11
|
+
}
|
@@ -2,71 +2,71 @@ import org.scalatest.{Matchers, FlatSpec}
|
|
2
2
|
|
3
3
|
class CrytpoSquareTest extends FlatSpec with Matchers {
|
4
4
|
it should "normalize away special characters" in {
|
5
|
-
CryptoSquare
|
5
|
+
CryptoSquare.normalizePlaintext("s#!@$%pl\t\r\nunk") should equal("splunk")
|
6
6
|
}
|
7
7
|
|
8
8
|
it should "normalize uppercase to lowercase" in {
|
9
9
|
pending
|
10
|
-
CryptoSquare
|
10
|
+
CryptoSquare.normalizePlaintext("1, 2, 3 GO!") should equal("123go")
|
11
11
|
}
|
12
12
|
|
13
13
|
|
14
14
|
it should "calc a square size for a perfect square" in {
|
15
15
|
pending
|
16
|
-
CryptoSquare
|
17
|
-
CryptoSquare
|
16
|
+
CryptoSquare.squareSize("1234") should equal(2)
|
17
|
+
CryptoSquare.squareSize("123456789") should equal(3)
|
18
18
|
}
|
19
19
|
|
20
20
|
it should "calc a square size when not a perfect square" in {
|
21
21
|
pending
|
22
|
-
CryptoSquare
|
23
|
-
CryptoSquare
|
22
|
+
CryptoSquare.squareSize("123456789abc") should equal(4)
|
23
|
+
CryptoSquare.squareSize("123456789abcd") should equal(4)
|
24
24
|
}
|
25
25
|
|
26
26
|
it should "not generate calc error when empty string" in {
|
27
27
|
pending
|
28
|
-
CryptoSquare
|
28
|
+
CryptoSquare.squareSize("") should equal(0)
|
29
29
|
}
|
30
30
|
|
31
31
|
|
32
32
|
it should "build plaintext segments - all equal segment lengths" in {
|
33
33
|
pending
|
34
|
-
CryptoSquare
|
34
|
+
CryptoSquare.plaintextSegments("Never vex thine heart with idle woes.") should
|
35
35
|
equal(List("neverv", "exthin", "eheart", "withid", "lewoes"))
|
36
36
|
}
|
37
37
|
|
38
38
|
it should "build plaintext segments - last segment short" in {
|
39
39
|
pending
|
40
|
-
CryptoSquare
|
40
|
+
CryptoSquare.plaintextSegments("ZOMG! ZOMBIES!!!") should
|
41
41
|
equal(List("zomg", "zomb", "ies"))
|
42
42
|
}
|
43
43
|
|
44
44
|
it should "build cipher text" in {
|
45
45
|
pending
|
46
|
-
CryptoSquare
|
46
|
+
CryptoSquare.ciphertext("Time is an illusion. Lunchtime doubly so.") should
|
47
47
|
equal("tasneyinicdsmiohooelntuillibsuuml")
|
48
|
-
CryptoSquare
|
48
|
+
CryptoSquare.ciphertext("We all know interspecies romance is weird.") should
|
49
49
|
equal("wneiaweoreneawssciliprerlneoidktcms")
|
50
50
|
}
|
51
51
|
|
52
52
|
it should "build normalized cipher text" in {
|
53
53
|
pending
|
54
|
-
CryptoSquare
|
54
|
+
CryptoSquare.normalizedCiphertext("Madness, and then illumination.") should
|
55
55
|
equal("msemo aanin dnin ndla etlt shui")
|
56
|
-
CryptoSquare
|
56
|
+
CryptoSquare.normalizedCiphertext("If man was meant to stay on the ground " +
|
57
57
|
"god would have given us roots") should
|
58
58
|
equal("imtgdvs fearwer mayoogo anouuio ntnnlvt wttddes aohghn sseoau")
|
59
59
|
}
|
60
60
|
|
61
61
|
it should "not error on blank strings" in {
|
62
62
|
pending
|
63
|
-
CryptoSquare
|
63
|
+
CryptoSquare.ciphertext("") should
|
64
64
|
equal("")
|
65
|
-
CryptoSquare
|
65
|
+
CryptoSquare.ciphertext(" ") should
|
66
66
|
equal("")
|
67
|
-
CryptoSquare
|
67
|
+
CryptoSquare.normalizedCiphertext("") should
|
68
68
|
equal("")
|
69
|
-
CryptoSquare
|
69
|
+
CryptoSquare.normalizedCiphertext(" ") should
|
70
70
|
equal("")
|
71
71
|
}
|
72
72
|
}
|
@@ -2,7 +2,7 @@ import org.scalatest.{Matchers, FunSuite}
|
|
2
2
|
|
3
3
|
class QueensTest extends FunSuite with Matchers {
|
4
4
|
test ("empty boardString") {
|
5
|
-
Queens
|
5
|
+
Queens.boardString(None, None) should equal(
|
6
6
|
"_ _ _ _ _ _ _ _\n" +
|
7
7
|
"_ _ _ _ _ _ _ _\n" +
|
8
8
|
"_ _ _ _ _ _ _ _\n" +
|
@@ -15,7 +15,7 @@ class QueensTest extends FunSuite with Matchers {
|
|
15
15
|
|
16
16
|
test("boardString") {
|
17
17
|
pending
|
18
|
-
Queens
|
18
|
+
Queens.boardString(Some(Position(2, 4)), Some(Position(6, 6))) should equal(
|
19
19
|
"_ _ _ _ _ _ _ _\n" +
|
20
20
|
"_ _ _ _ _ _ _ _\n" +
|
21
21
|
"_ _ _ _ W _ _ _\n" +
|
@@ -28,24 +28,24 @@ class QueensTest extends FunSuite with Matchers {
|
|
28
28
|
|
29
29
|
test("canAttack - false") {
|
30
30
|
pending
|
31
|
-
Queens
|
31
|
+
Queens.canAttack(Position(2, 3), Position(4, 7)) should be (false)
|
32
32
|
}
|
33
33
|
|
34
34
|
test("canAttack - vert attack") {
|
35
35
|
pending
|
36
|
-
Queens
|
36
|
+
Queens.canAttack(Position(2, 4), Position(2, 7)) should be (true)
|
37
37
|
}
|
38
38
|
|
39
39
|
test("canAttack - horiz attack") {
|
40
40
|
pending
|
41
|
-
Queens
|
41
|
+
Queens.canAttack(Position(5, 4), Position(2, 4)) should be (true)
|
42
42
|
}
|
43
43
|
|
44
44
|
test("canAttack - diag attack") {
|
45
45
|
pending
|
46
|
-
Queens
|
47
|
-
Queens
|
48
|
-
Queens
|
49
|
-
Queens
|
46
|
+
Queens.canAttack(Position(1, 1), Position(6, 6)) should be (true)
|
47
|
+
Queens.canAttack(Position(0, 6), Position(1, 7)) should be (true)
|
48
|
+
Queens.canAttack(Position(4, 1), Position(6, 3)) should be (true)
|
49
|
+
Queens.canAttack(Position(2, 2), Position(1, 3)) should be (true)
|
50
50
|
}
|
51
51
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
object Raindrops {
|
2
2
|
private val sounds = List((3, "Pling"), (5, "Plang"), (7, "Plong"))
|
3
3
|
|
4
4
|
def convert(n: Int): String =
|
@@ -7,7 +7,3 @@ class Raindrops {
|
|
7
7
|
case s => s
|
8
8
|
}
|
9
9
|
}
|
10
|
-
|
11
|
-
object Raindrops {
|
12
|
-
def apply() = new Raindrops
|
13
|
-
}
|
@@ -2,82 +2,82 @@ import org.scalatest.{Matchers, FlatSpec}
|
|
2
2
|
|
3
3
|
class RaindropsTest extends FlatSpec with Matchers {
|
4
4
|
it should "convert 1" in {
|
5
|
-
Raindrops
|
5
|
+
Raindrops.convert(1) should equal("1")
|
6
6
|
}
|
7
7
|
|
8
8
|
it should "convert 3" in {
|
9
9
|
pending
|
10
|
-
Raindrops
|
10
|
+
Raindrops.convert(3) should equal("Pling")
|
11
11
|
}
|
12
12
|
|
13
13
|
it should "convert 5" in {
|
14
14
|
pending
|
15
|
-
Raindrops
|
15
|
+
Raindrops.convert(5) should equal("Plang")
|
16
16
|
}
|
17
17
|
|
18
18
|
it should "convert 7" in {
|
19
19
|
pending
|
20
|
-
Raindrops
|
20
|
+
Raindrops.convert(7) should equal("Plong")
|
21
21
|
}
|
22
22
|
|
23
23
|
it should "convert 6" in {
|
24
24
|
pending
|
25
|
-
Raindrops
|
25
|
+
Raindrops.convert(6) should equal("Pling")
|
26
26
|
}
|
27
27
|
|
28
28
|
it should "convert 9" in {
|
29
29
|
pending
|
30
|
-
Raindrops
|
30
|
+
Raindrops.convert(9) should equal("Pling")
|
31
31
|
}
|
32
32
|
|
33
33
|
it should "convert 10" in {
|
34
34
|
pending
|
35
|
-
Raindrops
|
35
|
+
Raindrops.convert(10) should equal("Plang")
|
36
36
|
}
|
37
37
|
|
38
38
|
it should "convert 14" in {
|
39
39
|
pending
|
40
|
-
Raindrops
|
40
|
+
Raindrops.convert(14) should equal("Plong")
|
41
41
|
}
|
42
42
|
|
43
43
|
it should "convert 15" in {
|
44
44
|
pending
|
45
|
-
Raindrops
|
45
|
+
Raindrops.convert(15) should equal("PlingPlang")
|
46
46
|
}
|
47
47
|
|
48
48
|
it should "convert 21" in {
|
49
49
|
pending
|
50
|
-
Raindrops
|
50
|
+
Raindrops.convert(21) should equal("PlingPlong")
|
51
51
|
}
|
52
52
|
|
53
53
|
it should "convert 25" in {
|
54
54
|
pending
|
55
|
-
Raindrops
|
55
|
+
Raindrops.convert(25) should equal("Plang")
|
56
56
|
}
|
57
57
|
|
58
58
|
it should "convert 35" in {
|
59
59
|
pending
|
60
|
-
Raindrops
|
60
|
+
Raindrops.convert(35) should equal("PlangPlong")
|
61
61
|
}
|
62
62
|
|
63
63
|
it should "convert 49" in {
|
64
64
|
pending
|
65
|
-
Raindrops
|
65
|
+
Raindrops.convert(49) should equal("Plong")
|
66
66
|
}
|
67
67
|
|
68
68
|
it should "convert 52" in {
|
69
69
|
pending
|
70
|
-
Raindrops
|
70
|
+
Raindrops.convert(52) should equal("52")
|
71
71
|
}
|
72
72
|
|
73
73
|
it should "convert 105" in {
|
74
74
|
pending
|
75
|
-
Raindrops
|
75
|
+
Raindrops.convert(105) should equal("PlingPlangPlong")
|
76
76
|
}
|
77
77
|
|
78
78
|
it should "convert 12121" in {
|
79
79
|
pending
|
80
|
-
Raindrops
|
80
|
+
Raindrops.convert(12121) should equal("12121")
|
81
81
|
}
|
82
82
|
}
|
83
83
|
|
data/tracks/swift/README.md
CHANGED
@@ -1,17 +1,17 @@
|
|
1
|
-
# xSwift
|
2
|
-
|
3
|
-
Exercism exercises in Swift
|
4
|
-
|
5
|
-
## Contributing Guide
|
6
|
-
|
7
|
-
Please see the [contributing guide](https://github.com/exercism/x-api/blob/master/CONTRIBUTING.md#the-exercise-data)
|
8
|
-
|
9
|
-
## Swift Track
|
10
|
-
|
1
|
+
# xSwift
|
2
|
+
|
3
|
+
[Exercism](http://exercism.io) exercises in Swift
|
4
|
+
|
5
|
+
## Contributing Guide
|
6
|
+
|
7
|
+
Please see the [contributing guide](https://github.com/exercism/x-api/blob/master/CONTRIBUTING.md#the-exercise-data)
|
8
|
+
|
9
|
+
## Swift Track
|
10
|
+
|
11
11
|
We use Travis CI to automatically run all the unit tests on the code that is going to be checked in. In addition we also have [SwiftLint](https://github.com/realm/SwiftLint) set up to make sure that the code is consistent across all exercises. Please run `swiftlint autocorrect --format` on your code before submitting a PR. Also in order for the tests to run they need to be added to the `xcodeProject` project. Make sure all the tests pass locally and that you are using the latest Xcode version otherwise the Travis checks may fail.
|
12
|
-
|
13
|
-
## License
|
14
|
-
|
15
|
-
The MIT License (MIT)
|
16
|
-
|
17
|
-
Copyright (c)
|
12
|
+
|
13
|
+
## License
|
14
|
+
|
15
|
+
The MIT License (MIT)
|
16
|
+
|
17
|
+
Copyright (c) 2017 Katrina Owen, _@kytrinyx.com
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trackler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.5.
|
4
|
+
version: 2.0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katrina Owen
|
@@ -2496,6 +2496,7 @@ files:
|
|
2496
2496
|
- tracks/fsharp/exercises/ledger/Ledger.fs
|
2497
2497
|
- tracks/fsharp/exercises/ledger/LedgerTest.fs
|
2498
2498
|
- tracks/fsharp/exercises/linked-list/Example.fs
|
2499
|
+
- tracks/fsharp/exercises/linked-list/HINTS.md
|
2499
2500
|
- tracks/fsharp/exercises/linked-list/LinkedListTest.fs
|
2500
2501
|
- tracks/fsharp/exercises/list-ops/Example.fs
|
2501
2502
|
- tracks/fsharp/exercises/list-ops/ListOpsTest.fs
|
@@ -4519,6 +4520,8 @@ files:
|
|
4519
4520
|
- tracks/lua/exercises/luhn/luhn_spec.lua
|
4520
4521
|
- tracks/lua/exercises/matrix/example.lua
|
4521
4522
|
- tracks/lua/exercises/matrix/matrix_spec.lua
|
4523
|
+
- tracks/lua/exercises/meetup/example.lua
|
4524
|
+
- tracks/lua/exercises/meetup/meetup_spec.lua
|
4522
4525
|
- tracks/lua/exercises/minesweeper/example.lua
|
4523
4526
|
- tracks/lua/exercises/minesweeper/minesweeper_spec.lua
|
4524
4527
|
- tracks/lua/exercises/nth-prime/example.lua
|
@@ -5469,6 +5472,10 @@ files:
|
|
5469
5472
|
- tracks/purescript/docs/LEARNING.md
|
5470
5473
|
- tracks/purescript/docs/RESOURCES.md
|
5471
5474
|
- tracks/purescript/docs/TESTS.md
|
5475
|
+
- tracks/purescript/exercises/bob/bower.json
|
5476
|
+
- tracks/purescript/exercises/bob/examples/src/Bob.purs
|
5477
|
+
- tracks/purescript/exercises/bob/src/Bob.purs
|
5478
|
+
- tracks/purescript/exercises/bob/test/Main.purs
|
5472
5479
|
- tracks/purescript/exercises/hello-world/bower.json
|
5473
5480
|
- tracks/purescript/exercises/hello-world/examples/src/HelloWorld.purs
|
5474
5481
|
- tracks/purescript/exercises/hello-world/src/HelloWorld.purs
|
@@ -5785,6 +5792,7 @@ files:
|
|
5785
5792
|
- tracks/ruby/LICENSE
|
5786
5793
|
- tracks/ruby/Makefile
|
5787
5794
|
- tracks/ruby/README.md
|
5795
|
+
- tracks/ruby/Rakefile
|
5788
5796
|
- tracks/ruby/SETUP.md
|
5789
5797
|
- tracks/ruby/bin/enable-executable
|
5790
5798
|
- tracks/ruby/bin/executable-tests-check
|
@@ -6069,6 +6077,8 @@ files:
|
|
6069
6077
|
- tracks/ruby/lib/triangle_cases.rb
|
6070
6078
|
- tracks/ruby/lib/two_bucket_cases.rb
|
6071
6079
|
- tracks/ruby/lib/word_count_cases.rb
|
6080
|
+
- tracks/ruby/test/generator_test.rb
|
6081
|
+
- tracks/ruby/test/test_helper.rb
|
6072
6082
|
- tracks/rust/.git
|
6073
6083
|
- tracks/rust/.gitignore
|
6074
6084
|
- tracks/rust/.travis.yml
|
@@ -6365,6 +6375,7 @@ files:
|
|
6365
6375
|
- tracks/scala/exercises/allergies/build.sbt
|
6366
6376
|
- tracks/scala/exercises/allergies/example.scala
|
6367
6377
|
- tracks/scala/exercises/allergies/src/main/scala/.keep
|
6378
|
+
- tracks/scala/exercises/allergies/src/main/scala/Allergies.scala
|
6368
6379
|
- tracks/scala/exercises/allergies/src/test/scala/AllergiesTest.scala
|
6369
6380
|
- tracks/scala/exercises/alphametics/build.sbt
|
6370
6381
|
- tracks/scala/exercises/alphametics/example.scala
|
@@ -6377,6 +6388,7 @@ files:
|
|
6377
6388
|
- tracks/scala/exercises/atbash-cipher/build.sbt
|
6378
6389
|
- tracks/scala/exercises/atbash-cipher/example.scala
|
6379
6390
|
- tracks/scala/exercises/atbash-cipher/src/main/scala/.keep
|
6391
|
+
- tracks/scala/exercises/atbash-cipher/src/main/scala/Atbash.scala
|
6380
6392
|
- tracks/scala/exercises/atbash-cipher/src/test/scala/atbash_test.scala
|
6381
6393
|
- tracks/scala/exercises/bank-account/HINTS.md
|
6382
6394
|
- tracks/scala/exercises/bank-account/build.sbt
|
@@ -6420,6 +6432,7 @@ files:
|
|
6420
6432
|
- tracks/scala/exercises/crypto-square/build.sbt
|
6421
6433
|
- tracks/scala/exercises/crypto-square/example.scala
|
6422
6434
|
- tracks/scala/exercises/crypto-square/src/main/scala/.keep
|
6435
|
+
- tracks/scala/exercises/crypto-square/src/main/scala/CryptoSquare.scala
|
6423
6436
|
- tracks/scala/exercises/crypto-square/src/test/scala/CryptoSquareTest.scala
|
6424
6437
|
- tracks/scala/exercises/custom-set/build.sbt
|
6425
6438
|
- tracks/scala/exercises/custom-set/example.scala
|
@@ -6569,10 +6582,12 @@ files:
|
|
6569
6582
|
- tracks/scala/exercises/queen-attack/build.sbt
|
6570
6583
|
- tracks/scala/exercises/queen-attack/example.scala
|
6571
6584
|
- tracks/scala/exercises/queen-attack/src/main/scala/.keep
|
6585
|
+
- tracks/scala/exercises/queen-attack/src/main/scala/Queens.scala
|
6572
6586
|
- tracks/scala/exercises/queen-attack/src/test/scala/QueensTest.scala
|
6573
6587
|
- tracks/scala/exercises/raindrops/build.sbt
|
6574
6588
|
- tracks/scala/exercises/raindrops/example.scala
|
6575
6589
|
- tracks/scala/exercises/raindrops/src/main/scala/.keep
|
6590
|
+
- tracks/scala/exercises/raindrops/src/main/scala/Raindrops.scala
|
6576
6591
|
- tracks/scala/exercises/raindrops/src/test/scala/RaindropsTest.scala
|
6577
6592
|
- tracks/scala/exercises/rna-transcription/build.sbt
|
6578
6593
|
- tracks/scala/exercises/rna-transcription/example.scala
|