trackler 2.0.6.0 → 2.0.6.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/csharp/.gitignore +3 -1
  4. data/tracks/csharp/README.md +1 -1
  5. data/tracks/csharp/build.fsx +6 -0
  6. data/tracks/csharp/circle.yml +16 -0
  7. data/tracks/csharp/paket.dependencies +2 -1
  8. data/tracks/csharp/paket.lock +3 -0
  9. data/tracks/ecmascript/exercises/phone-number/example.js +15 -28
  10. data/tracks/ecmascript/exercises/phone-number/phone-number.spec.js +28 -13
  11. data/tracks/fsharp/.gitignore +3 -1
  12. data/tracks/fsharp/README.md +1 -1
  13. data/tracks/fsharp/build.fsx +7 -1
  14. data/tracks/fsharp/circle.yml +16 -0
  15. data/tracks/fsharp/paket.dependencies +2 -1
  16. data/tracks/fsharp/paket.lock +3 -0
  17. data/tracks/ocaml/tools/test-generator/src/controller.ml +5 -5
  18. data/tracks/ocaml/tools/test-generator/src/model.ml +2 -0
  19. data/tracks/ocaml/tools/test-generator/src/parser.ml +35 -31
  20. data/tracks/ocaml/tools/test-generator/src/special_cases.ml +27 -23
  21. data/tracks/ocaml/tools/test-generator/src/utils.ml +2 -2
  22. data/tracks/ocaml/tools/test-generator/templates/dominoes/template.ml +40 -0
  23. data/tracks/ocaml/tools/test-generator/test/parser_test.ml +27 -21
  24. data/tracks/pony/config.json +5 -0
  25. data/tracks/pony/docs/ABOUT.md +12 -0
  26. data/tracks/pony/docs/INSTALLATION.md +4 -6
  27. data/tracks/pony/docs/LEARNING.md +7 -0
  28. data/tracks/pony/docs/RESOURCES.md +7 -0
  29. data/tracks/pony/docs/TESTS.md +11 -0
  30. data/tracks/pony/exercises/hamming/test.pony +2 -2
  31. data/tracks/pony/exercises/rna-transcription/example.pony +13 -0
  32. data/tracks/pony/exercises/rna-transcription/test.pony +32 -0
  33. data/tracks/r/exercises/anagram/example.R +18 -2
  34. data/tracks/r/exercises/bob/example.R +16 -1
  35. data/tracks/r/exercises/luhn/example.R +23 -7
  36. data/tracks/r/exercises/luhn/luhn.R +6 -0
  37. data/tracks/r/exercises/word-count/example.R +5 -0
  38. data/tracks/ruby/exercises/series/example.rb +12 -22
  39. data/tracks/ruby/exercises/series/series_test.rb +19 -12
  40. data/tracks/ruby/test/test_helper.rb +3 -3
  41. data/tracks/scala/config.json +7 -0
  42. data/tracks/scala/exercises/sieve/build.sbt +2 -2
  43. data/tracks/scala/exercises/simple-cipher/build.sbt +2 -2
  44. metadata +10 -1
@@ -17,3 +17,9 @@ checksum <- function() {
17
17
  is_valid <- function() {
18
18
 
19
19
  }
20
+
21
+
22
+ # addends returns the vector of numbers that follow the luhn algorithm
23
+ addends <- function(input) {
24
+
25
+ }
@@ -0,0 +1,5 @@
1
+ word_count <- function(input) {
2
+ input <- gsub("[[:punct:]]","",tolower(input))
3
+ input <- strsplit(input, " ")[[1]]
4
+ as.list(table(input[nchar(input)>0]))
5
+ }
@@ -1,27 +1,17 @@
1
1
  class Series
2
- def initialize(numeric_string)
3
- @digits = convert_to_digits(numeric_string)
2
+ def initialize(series)
3
+ @series = (series)
4
4
  end
5
-
6
- def slices(length)
7
- if length > digits.length
8
- fail ArgumentError.new('Not enough digits')
5
+ def slices(n)
6
+ if n > @series.length
7
+ raise ArgumentError
9
8
  end
10
- result = []
11
- i = -1
12
- begin
13
- i += 1
14
- i2 = i + length - 1
15
- result << digits[i..i2]
16
- end while i2 < digits.size - 1
17
- result
18
- end
19
-
20
- private
21
-
22
- attr_reader :digits
23
-
24
- def convert_to_digits(s)
25
- s.chars.to_a.map(&:to_i)
9
+ series = @series
10
+ substrings = []
11
+ until series.length < n
12
+ substrings << series[0..n-1]
13
+ series = series[1..-1]
14
+ end
15
+ substrings
26
16
  end
27
17
  end
@@ -6,75 +6,75 @@ require_relative 'series'
6
6
  class SeriesTest < Minitest::Test
7
7
  def test_simple_slices_of_one
8
8
  series = Series.new('01234')
9
- assert_equal [[0], [1], [2], [3], [4]], series.slices(1)
9
+ assert_equal ['0', '1', '2', '3', '4'], series.slices(1)
10
10
  end
11
11
 
12
12
  def test_simple_slices_of_one_again
13
13
  skip
14
14
  series = Series.new('92834')
15
- assert_equal [[9], [2], [8], [3], [4]], series.slices(1)
15
+ assert_equal ['9', '2', '8', '3', '4'], series.slices(1)
16
16
  end
17
17
 
18
18
  def test_simple_slices_of_two
19
19
  skip
20
20
  series = Series.new('01234')
21
- assert_equal [[0, 1], [1, 2], [2, 3], [3, 4]], series.slices(2)
21
+ assert_equal ['01', '12', '23', '34'], series.slices(2)
22
22
  end
23
23
 
24
24
  def test_other_slices_of_two
25
25
  skip
26
26
  series = Series.new('98273463')
27
- expected = [[9, 8], [8, 2], [2, 7], [7, 3], [3, 4], [4, 6], [6, 3]]
27
+ expected = ['98', '82', '27', '73', '34', '46', '63']
28
28
  assert_equal expected, series.slices(2)
29
29
  end
30
30
 
31
31
  def test_simple_slices_of_two_again
32
32
  skip
33
33
  series = Series.new('37103')
34
- assert_equal [[3, 7], [7, 1], [1, 0], [0, 3]], series.slices(2)
34
+ assert_equal ['37', '71', '10', '03'], series.slices(2)
35
35
  end
36
36
 
37
37
  def test_simple_slices_of_three
38
38
  skip
39
39
  series = Series.new('01234')
40
- assert_equal [[0, 1, 2], [1, 2, 3], [2, 3, 4]], series.slices(3)
40
+ assert_equal ['012', '123', '234'], series.slices(3)
41
41
  end
42
42
 
43
43
  def test_simple_slices_of_three_again
44
44
  skip
45
45
  series = Series.new('31001')
46
- assert_equal [[3, 1, 0], [1, 0, 0], [0, 0, 1]], series.slices(3)
46
+ assert_equal ['310', '100', '001'], series.slices(3)
47
47
  end
48
48
 
49
49
  def test_other_slices_of_three
50
50
  skip
51
51
  series = Series.new('982347')
52
- expected = [[9, 8, 2], [8, 2, 3], [2, 3, 4], [3, 4, 7]]
52
+ expected = ['982', '823', '234', '347']
53
53
  assert_equal expected, series.slices(3)
54
54
  end
55
55
 
56
56
  def test_simple_slices_of_four
57
57
  skip
58
58
  series = Series.new('01234')
59
- assert_equal [[0, 1, 2, 3], [1, 2, 3, 4]], series.slices(4)
59
+ assert_equal ['0123', '1234'], series.slices(4)
60
60
  end
61
61
 
62
62
  def test_simple_slices_of_four_again
63
63
  skip
64
64
  series = Series.new('91274')
65
- assert_equal [[9, 1, 2, 7], [1, 2, 7, 4]], series.slices(4)
65
+ assert_equal ['9127', '1274'], series.slices(4)
66
66
  end
67
67
 
68
68
  def test_simple_slices_of_five
69
69
  skip
70
70
  series = Series.new('01234')
71
- assert_equal [[0, 1, 2, 3, 4]], series.slices(5)
71
+ assert_equal ['01234'], series.slices(5)
72
72
  end
73
73
 
74
74
  def test_simple_slices_of_five_again
75
75
  skip
76
76
  series = Series.new('81228')
77
- assert_equal [[8, 1, 2, 2, 8]], series.slices(5)
77
+ assert_equal ['81228'], series.slices(5)
78
78
  end
79
79
 
80
80
  def test_simple_slice_that_blows_up
@@ -94,4 +94,11 @@ class SeriesTest < Minitest::Test
94
94
  series.slices(slice_string.length + 1)
95
95
  end
96
96
  end
97
+
98
+ def test_sequential_slices
99
+ skip
100
+ series = Series.new('1234')
101
+ assert_equal ['12', '23', '34'], series.slices(2)
102
+ assert_equal ['123', '234'], series.slices(3)
103
+ end
97
104
  end
@@ -1,8 +1,5 @@
1
1
  $LOAD_PATH.unshift File.expand_path('../lib', __FILE__)
2
2
 
3
- require 'minitest/autorun'
4
- require 'minitest/pride'
5
-
6
3
  unless ENV['CI']
7
4
  require 'simplecov'
8
5
 
@@ -15,5 +12,8 @@ unless ENV['CI']
15
12
  end
16
13
  end
17
14
 
15
+ require 'minitest/autorun'
16
+ require 'minitest/pride'
17
+
18
18
  # So we can be sure we have coverage on the whole lib directory:
19
19
  Dir.glob('lib/*.rb').each { |file| require file.gsub(%r{(^lib\/|\.rb$)}, '') }
@@ -382,12 +382,19 @@
382
382
  "slug": "sieve",
383
383
  "difficulty": 1,
384
384
  "topics": [
385
+ "Filtering",
386
+ "Mathematics",
387
+ "Lists"
385
388
  ]
386
389
  },
387
390
  {
388
391
  "slug": "simple-cipher",
389
392
  "difficulty": 1,
390
393
  "topics": [
394
+ "Optional values",
395
+ "Strings",
396
+ "Algorithms",
397
+ "Transforming"
391
398
  ]
392
399
  },
393
400
  {
@@ -1,3 +1,3 @@
1
- scalaVersion := "2.11.7"
1
+ scalaVersion := "2.12.1"
2
2
 
3
- libraryDependencies += "org.scalatest" % "scalatest_2.11" % "2.2.5" % "test"
3
+ libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.1" % "test"
@@ -1,3 +1,3 @@
1
- scalaVersion := "2.11.7"
1
+ scalaVersion := "2.12.1"
2
2
 
3
- libraryDependencies += "org.scalatest" % "scalatest_2.11" % "2.2.5" % "test"
3
+ libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.1" % "test"
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.6.0
4
+ version: 2.0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katrina Owen
@@ -1261,6 +1261,7 @@ files:
1261
1261
  - tracks/csharp/build.cmd
1262
1262
  - tracks/csharp/build.fsx
1263
1263
  - tracks/csharp/build.sh
1264
+ - tracks/csharp/circle.yml
1264
1265
  - tracks/csharp/config.json
1265
1266
  - tracks/csharp/docs/ABOUT.md
1266
1267
  - tracks/csharp/docs/INSTALLATION.md
@@ -2396,6 +2397,7 @@ files:
2396
2397
  - tracks/fsharp/build.cmd
2397
2398
  - tracks/fsharp/build.fsx
2398
2399
  - tracks/fsharp/build.sh
2400
+ - tracks/fsharp/circle.yml
2399
2401
  - tracks/fsharp/config.json
2400
2402
  - tracks/fsharp/docs/ABOUT.md
2401
2403
  - tracks/fsharp/docs/INSTALLATION.md
@@ -5039,6 +5041,7 @@ files:
5039
5041
  - tracks/ocaml/tools/test-generator/templates/bob/template.ml
5040
5042
  - tracks/ocaml/tools/test-generator/templates/bracket-push/template.ml
5041
5043
  - tracks/ocaml/tools/test-generator/templates/difference-of-squares/template.ml
5044
+ - tracks/ocaml/tools/test-generator/templates/dominoes/template.ml
5042
5045
  - tracks/ocaml/tools/test-generator/templates/hamming/template.ml
5043
5046
  - tracks/ocaml/tools/test-generator/templates/hello-world/template.ml
5044
5047
  - tracks/ocaml/tools/test-generator/templates/leap/template.ml
@@ -5475,7 +5478,11 @@ files:
5475
5478
  - tracks/pony/SETUP.md
5476
5479
  - tracks/pony/bin/fetch-configlet
5477
5480
  - tracks/pony/config.json
5481
+ - tracks/pony/docs/ABOUT.md
5478
5482
  - tracks/pony/docs/INSTALLATION.md
5483
+ - tracks/pony/docs/LEARNING.md
5484
+ - tracks/pony/docs/RESOURCES.md
5485
+ - tracks/pony/docs/TESTS.md
5479
5486
  - tracks/pony/exercises/anagram/example.pony
5480
5487
  - tracks/pony/exercises/anagram/test.pony
5481
5488
  - tracks/pony/exercises/bob/example.pony
@@ -5488,6 +5495,8 @@ files:
5488
5495
  - tracks/pony/exercises/hello-world/test.pony
5489
5496
  - tracks/pony/exercises/leap/example.pony
5490
5497
  - tracks/pony/exercises/leap/test.pony
5498
+ - tracks/pony/exercises/rna-transcription/example.pony
5499
+ - tracks/pony/exercises/rna-transcription/test.pony
5491
5500
  - tracks/pony/img/icon.png
5492
5501
  - tracks/powershell/.git
5493
5502
  - tracks/powershell/.gitignore