trackler 2.0.5.13 → 2.0.5.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/common/.travis.yml +1 -0
- data/common/bin/check_required_files_present +55 -0
- data/lib/trackler/version.rb +1 -1
- data/tracks/pascal/exercises/Hello-World/TestHelloWorld.dpr +60 -0
- data/tracks/pascal/exercises/Hello-World/TestHelloWorld.dproj +176 -0
- data/tracks/pascal/exercises/Hello-World/uHelloWorldExample.pas +24 -0
- data/tracks/pascal/exercises/Hello-World/uTestHelloWorld.pas +65 -0
- data/tracks/pascal/exercises/allergies/AllergyTests.dpr +60 -0
- data/tracks/pascal/exercises/allergies/AllergyTests.dproj +176 -0
- data/tracks/pascal/exercises/allergies/uAllergiesExample.pas +67 -0
- data/tracks/pascal/exercises/allergies/uAllergyTests.pas +177 -0
- data/tracks/pascal/exercises/bank-account/BankAccountTests.dpr +60 -0
- data/tracks/pascal/exercises/bank-account/BankAccountTests.dproj +176 -0
- data/tracks/pascal/exercises/bank-account/uBankAccountExample.pas +96 -0
- data/tracks/pascal/exercises/bank-account/uBankAccountTests.pas +140 -0
- data/tracks/pascal/exercises/beer-song/BeerSongTests.dpr +60 -0
- data/tracks/pascal/exercises/beer-song/BeerSongTests.dproj +176 -0
- data/tracks/pascal/exercises/beer-song/uBeerSongExample.pas +45 -0
- data/tracks/pascal/exercises/beer-song/uBeerSongTests.pas +84 -0
- data/tracks/pascal/exercises/binary-search/BinarySearchTest.dpr +60 -0
- data/tracks/pascal/exercises/binary-search/BinarySearchTest.dproj +176 -0
- data/tracks/pascal/exercises/binary-search/uBinarySearchExample.pas +40 -0
- data/tracks/pascal/exercises/binary-search/uBinarySearchTest.pas +132 -0
- data/tracks/pascal/exercises/bob/BobTests.dpr +60 -0
- data/tracks/pascal/exercises/bob/BobTests.dproj +176 -0
- data/tracks/pascal/exercises/bob/uBobExample.pas +47 -0
- data/tracks/pascal/exercises/bob/uBobTests.pas +180 -0
- data/tracks/pascal/exercises/book-store/BookStoreTests.dpr +60 -0
- data/tracks/pascal/exercises/book-store/BookStoreTests.dproj +176 -0
- data/tracks/pascal/exercises/book-store/uBookStoreExample.pas +144 -0
- data/tracks/pascal/exercises/book-store/uBookStoreTests.pas +56 -0
- data/tracks/pascal/exercises/bowling/BowlingTests.dpr +60 -0
- data/tracks/pascal/exercises/bowling/BowlingTests.dproj +176 -0
- data/tracks/pascal/exercises/bowling/uBowlingExample.pas +105 -0
- data/tracks/pascal/exercises/bowling/uBowlingTests.pas +101 -0
- data/tracks/pascal/exercises/circular-buffer/CircularBufferTests.dpr +60 -0
- data/tracks/pascal/exercises/circular-buffer/CircularBufferTests.dproj +176 -0
- data/tracks/pascal/exercises/circular-buffer/uCircularBufferExample.pas +72 -0
- data/tracks/pascal/exercises/circular-buffer/uCircularBufferTests.pas +249 -0
- data/tracks/pascal/exercises/clock/ClockTest.dpr +60 -0
- data/tracks/pascal/exercises/clock/ClockTest.dproj +176 -0
- data/tracks/pascal/exercises/clock/uClockExample.pas +54 -0
- data/tracks/pascal/exercises/clock/uClockTest.pas +157 -0
- data/tracks/pascal/exercises/etl/ETLtests.dpr +60 -0
- data/tracks/pascal/exercises/etl/ETLtests.dproj +176 -0
- data/tracks/pascal/exercises/etl/uETLexample.pas +25 -0
- data/tracks/pascal/exercises/etl/uETLtests.pas +191 -0
- data/tracks/pascal/exercises/hamming/Hamming.dpr +60 -0
- data/tracks/pascal/exercises/hamming/Hamming.dproj +176 -0
- data/tracks/pascal/exercises/hamming/uHammingExample.pas +24 -0
- data/tracks/pascal/exercises/hamming/uHammingTests.pas +165 -0
- data/tracks/pascal/exercises/leap/LeapTest.dpr +60 -0
- data/tracks/pascal/exercises/leap/LeapTest.dproj +176 -0
- data/tracks/pascal/exercises/leap/uLeapExample.pas +17 -0
- data/tracks/pascal/exercises/leap/uLeapTests.pas +81 -0
- data/tracks/pascal/exercises/nucleotide-count/NucleotideCountTest.dpr +60 -0
- data/tracks/pascal/exercises/nucleotide-count/NucleotideCountTest.dproj +176 -0
- data/tracks/pascal/exercises/nucleotide-count/uNucleotideCountExample.pas +72 -0
- data/tracks/pascal/exercises/nucleotide-count/uNucleotideCountTest.pas +190 -0
- data/tracks/pascal/exercises/perfect-numbers/PerfectNumbersTest.dpr +60 -0
- data/tracks/pascal/exercises/perfect-numbers/PerfectNumbersTest.dproj +176 -0
- data/tracks/pascal/exercises/perfect-numbers/uPerfectNumbersExample.pas +34 -0
- data/tracks/pascal/exercises/perfect-numbers/uPerfectNumbersTest.pas +48 -0
- data/tracks/pascal/exercises/phone-number/PhoneNumberTests.dpr +60 -0
- data/tracks/pascal/exercises/phone-number/PhoneNumberTests.dproj +176 -0
- data/tracks/pascal/exercises/phone-number/uPhoneNumberExample.pas +102 -0
- data/tracks/pascal/exercises/phone-number/uPhoneNumberTests.pas +138 -0
- data/tracks/php/exercises/variable-length-quantity/variable-length-quantity_test.php +1 -1
- data/tracks/ruby/Gemfile +0 -1
- data/tracks/ruby/Makefile +2 -1
- data/tracks/ruby/Rakefile +3 -0
- data/tracks/ruby/exercises/simple-linked-list/.meta/.version +1 -0
- data/tracks/ruby/exercises/simple-linked-list/example.rb +39 -48
- data/tracks/ruby/exercises/simple-linked-list/simple_linked_list_test.rb +99 -125
- data/tracks/ruby/exercises/wordy/.meta/.version +1 -0
- data/tracks/ruby/exercises/wordy/example.rb +4 -0
- data/tracks/ruby/exercises/wordy/example.tt +17 -0
- data/tracks/ruby/exercises/wordy/wordy_test.rb +66 -35
- data/tracks/ruby/lib/wordy_cases.rb +67 -0
- data/tracks/ruby/test/wordy_cases_test.rb +102 -0
- data/tracks/scala/config.json +7 -1
- data/tracks/scala/exercises/connect/{README.md → HINTS.md} +1 -12
- data/tracks/scala/exercises/connect/build.sbt +2 -2
- metadata +73 -3
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'minitest/autorun'
|
2
|
+
require_relative 'wordy'
|
3
|
+
|
4
|
+
# Test data version: <%= sha1 %>
|
5
|
+
class WordyTest < Minitest::Test<% test_cases.each do |test_case| %>
|
6
|
+
def <%= test_case.test_name %>
|
7
|
+
<%= test_case.skipped %>
|
8
|
+
<%= test_case.workload %>
|
9
|
+
end
|
10
|
+
<% end %>
|
11
|
+
|
12
|
+
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
13
|
+
def test_bookkeeping
|
14
|
+
skip
|
15
|
+
assert_equal <%= version.next %>, BookKeeping::VERSION
|
16
|
+
end
|
17
|
+
end
|
@@ -1,97 +1,128 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
gem 'minitest', '>= 5.0.0'
|
3
1
|
require 'minitest/autorun'
|
4
2
|
require_relative 'wordy'
|
5
3
|
|
6
|
-
|
7
|
-
|
8
|
-
|
4
|
+
# Test data version: aa12f2e
|
5
|
+
class WordyTest < Minitest::Test
|
6
|
+
def test_addition
|
7
|
+
# skip
|
8
|
+
question = 'What is 1 plus 1?'
|
9
|
+
assert_equal(2, WordProblem.new(question).answer)
|
9
10
|
end
|
10
11
|
|
11
|
-
def
|
12
|
+
def test_more_addition
|
12
13
|
skip
|
13
|
-
|
14
|
+
question = 'What is 53 plus 2?'
|
15
|
+
assert_equal(55, WordProblem.new(question).answer)
|
14
16
|
end
|
15
17
|
|
16
|
-
def
|
18
|
+
def test_addition_with_negative_numbers
|
17
19
|
skip
|
18
|
-
|
20
|
+
question = 'What is -1 plus -10?'
|
21
|
+
assert_equal(-11, WordProblem.new(question).answer)
|
19
22
|
end
|
20
23
|
|
21
|
-
def
|
24
|
+
def test_large_addition
|
22
25
|
skip
|
23
|
-
|
26
|
+
question = 'What is 123 plus 45678?'
|
27
|
+
assert_equal(45801, WordProblem.new(question).answer)
|
24
28
|
end
|
25
29
|
|
26
|
-
def
|
30
|
+
def test_subtraction
|
27
31
|
skip
|
28
|
-
|
32
|
+
question = 'What is 4 minus -12?'
|
33
|
+
assert_equal(16, WordProblem.new(question).answer)
|
29
34
|
end
|
30
35
|
|
31
|
-
def
|
36
|
+
def test_multiplication
|
32
37
|
skip
|
33
|
-
|
38
|
+
question = 'What is -3 multiplied by 25?'
|
39
|
+
assert_equal(-75, WordProblem.new(question).answer)
|
34
40
|
end
|
35
41
|
|
36
|
-
def
|
42
|
+
def test_division
|
37
43
|
skip
|
38
|
-
|
44
|
+
question = 'What is 33 divided by -3?'
|
45
|
+
assert_equal(-11, WordProblem.new(question).answer)
|
39
46
|
end
|
40
47
|
|
41
|
-
def
|
48
|
+
def test_multiple_additions
|
42
49
|
skip
|
43
50
|
question = 'What is 1 plus 1 plus 1?'
|
44
|
-
assert_equal
|
51
|
+
assert_equal(3, WordProblem.new(question).answer)
|
45
52
|
end
|
46
53
|
|
47
|
-
def
|
54
|
+
def test_addition_and_subtraction
|
48
55
|
skip
|
49
56
|
question = 'What is 1 plus 5 minus -2?'
|
50
|
-
assert_equal
|
57
|
+
assert_equal(8, WordProblem.new(question).answer)
|
51
58
|
end
|
52
59
|
|
53
|
-
def
|
60
|
+
def test_multiple_subtraction
|
54
61
|
skip
|
55
62
|
question = 'What is 20 minus 4 minus 13?'
|
56
|
-
assert_equal
|
63
|
+
assert_equal(3, WordProblem.new(question).answer)
|
57
64
|
end
|
58
65
|
|
59
|
-
def
|
66
|
+
def test_subtraction_then_addition
|
60
67
|
skip
|
61
68
|
question = 'What is 17 minus 6 plus 3?'
|
62
|
-
assert_equal
|
69
|
+
assert_equal(14, WordProblem.new(question).answer)
|
63
70
|
end
|
64
71
|
|
65
|
-
def
|
72
|
+
def test_multiple_multiplication
|
66
73
|
skip
|
67
74
|
question = 'What is 2 multiplied by -2 multiplied by 3?'
|
68
75
|
assert_equal(-12, WordProblem.new(question).answer)
|
69
76
|
end
|
70
77
|
|
71
|
-
def
|
78
|
+
def test_addition_and_multiplication
|
72
79
|
skip
|
73
80
|
question = 'What is -3 plus 7 multiplied by -2?'
|
74
|
-
|
75
|
-
|
81
|
+
answer = WordProblem.new(question).answer
|
82
|
+
message = "You should ignore order of precedence. -3 + 7 * -2 = -8, not #{answer}"
|
83
|
+
assert_equal(-8, answer, message)
|
76
84
|
end
|
77
85
|
|
78
|
-
def
|
86
|
+
def test_multiple_division
|
79
87
|
skip
|
80
88
|
question = 'What is -12 divided by 2 divided by -3?'
|
81
|
-
assert_equal
|
89
|
+
assert_equal(2, WordProblem.new(question).answer)
|
82
90
|
end
|
83
91
|
|
84
|
-
def
|
92
|
+
def test_unknown_operation
|
85
93
|
skip
|
94
|
+
question = 'What is 52 cubed?'
|
86
95
|
assert_raises ArgumentError do
|
87
|
-
WordProblem.new(
|
96
|
+
WordProblem.new(question).answer
|
88
97
|
end
|
89
98
|
end
|
90
99
|
|
91
|
-
def
|
100
|
+
def test_non_math_question
|
92
101
|
skip
|
102
|
+
question = 'Who is the President of the United States?'
|
93
103
|
assert_raises ArgumentError do
|
94
|
-
WordProblem.new(
|
104
|
+
WordProblem.new(question).answer
|
95
105
|
end
|
96
106
|
end
|
107
|
+
|
108
|
+
# Problems in exercism evolve over time, as we find better ways to ask
|
109
|
+
# questions.
|
110
|
+
# The version number refers to the version of the problem you solved,
|
111
|
+
# not your solution.
|
112
|
+
#
|
113
|
+
# Define a constant named VERSION inside of the top level BookKeeping
|
114
|
+
# module, which may be placed near the end of your file.
|
115
|
+
#
|
116
|
+
# In your file, it will look like this:
|
117
|
+
#
|
118
|
+
# module BookKeeping
|
119
|
+
# VERSION = 1 # Where the version number matches the one in the test.
|
120
|
+
# end
|
121
|
+
#
|
122
|
+
# If you are curious, read more about constants on RubyDoc:
|
123
|
+
# http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
|
124
|
+
def test_bookkeeping
|
125
|
+
skip
|
126
|
+
assert_equal 1, BookKeeping::VERSION
|
127
|
+
end
|
97
128
|
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
class WordyCase < OpenStruct
|
2
|
+
def test_name
|
3
|
+
'test_%s' % description.downcase.tr(' ', '_')
|
4
|
+
end
|
5
|
+
|
6
|
+
def workload
|
7
|
+
[
|
8
|
+
"question = '#{input}'",
|
9
|
+
indent(4, assertion),
|
10
|
+
].join("\n")
|
11
|
+
end
|
12
|
+
|
13
|
+
def skipped
|
14
|
+
index.zero? ? '# skip' : 'skip'
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def indent(size, lines)
|
20
|
+
lines.lines.each_with_object('') { |line, obj| obj << ' ' * size + line }
|
21
|
+
end
|
22
|
+
|
23
|
+
def assertion
|
24
|
+
return error_assertion unless expected
|
25
|
+
return message_assertion if message
|
26
|
+
|
27
|
+
"assert_equal(#{expected}, WordProblem.new(question).answer)"
|
28
|
+
end
|
29
|
+
|
30
|
+
def error_assertion
|
31
|
+
[
|
32
|
+
'assert_raises ArgumentError do',
|
33
|
+
indent(2, 'WordProblem.new(question).answer'),
|
34
|
+
'end',
|
35
|
+
].join("\n")
|
36
|
+
end
|
37
|
+
|
38
|
+
def message_assertion
|
39
|
+
[
|
40
|
+
'answer = WordProblem.new(question).answer',
|
41
|
+
"message = \"#{message % '#{answer}'}\"",
|
42
|
+
"assert_equal(#{expected}, answer, message)",
|
43
|
+
].join("\n")
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
class WordyCase::PreProcessor
|
48
|
+
class << self
|
49
|
+
def call(row)
|
50
|
+
row.merge('message' => message_for(row))
|
51
|
+
end
|
52
|
+
|
53
|
+
private
|
54
|
+
|
55
|
+
def message_for(row)
|
56
|
+
return unless row['input'] == 'What is -3 plus 7 multiplied by -2?'
|
57
|
+
|
58
|
+
'You should ignore order of precedence. -3 + 7 * -2 = -8, not %s'
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
WordyCases = proc do |data|
|
64
|
+
JSON.parse(data)['cases'].map.with_index do |row, i|
|
65
|
+
WordyCase.new(WordyCase::PreProcessor.call(row).merge(index: i))
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,102 @@
|
|
1
|
+
require_relative 'test_helper'
|
2
|
+
|
3
|
+
class WordyCaseTest < Minitest::Test
|
4
|
+
def test_test_name
|
5
|
+
test_case = WordyCase.new(description: 'description')
|
6
|
+
|
7
|
+
assert_equal 'test_description', test_case.test_name
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_test_name_with_description_with_spaces
|
11
|
+
test_case = WordyCase.new(description: 'description with spaces')
|
12
|
+
|
13
|
+
assert_equal 'test_description_with_spaces', test_case.test_name
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_skipped_with_zero_index
|
17
|
+
test_case = WordyCase.new(index: 0)
|
18
|
+
|
19
|
+
assert_equal '# skip', test_case.skipped
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_skipped_with_non_zero_index
|
23
|
+
test_case = WordyCase.new(index: 1)
|
24
|
+
|
25
|
+
assert_equal 'skip', test_case.skipped
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_workload_with_expected_and_no_message
|
29
|
+
test_case = WordyCase.new(expected: 1, input: 1)
|
30
|
+
|
31
|
+
expected_workload = [
|
32
|
+
'question = \'1\'',
|
33
|
+
' assert_equal(1, WordProblem.new(question).answer)',
|
34
|
+
].join("\n")
|
35
|
+
|
36
|
+
assert_equal expected_workload, test_case.workload
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_workload_with_expected_and_message
|
40
|
+
test_case = WordyCase.new(expected: 1, input: 1, message: 'test %s')
|
41
|
+
|
42
|
+
expected_workload = [
|
43
|
+
'question = \'1\'',
|
44
|
+
' answer = WordProblem.new(question).answer',
|
45
|
+
' message = "test #{answer}"',
|
46
|
+
' assert_equal(1, answer, message)',
|
47
|
+
].join("\n")
|
48
|
+
|
49
|
+
assert_equal expected_workload, test_case.workload
|
50
|
+
end
|
51
|
+
|
52
|
+
def test_workload_without_expected
|
53
|
+
test_case = WordyCase.new(input: 1)
|
54
|
+
|
55
|
+
expected_workload = [
|
56
|
+
'question = \'1\'',
|
57
|
+
' assert_raises ArgumentError do',
|
58
|
+
' WordProblem.new(question).answer',
|
59
|
+
' end',
|
60
|
+
].join("\n")
|
61
|
+
|
62
|
+
assert_equal expected_workload, test_case.workload
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
class WordyCasePrProcessorTest < Minitest::Test
|
67
|
+
def test_call_as_non_special_case
|
68
|
+
row = { 'input' => '' }
|
69
|
+
processed_row = WordyCase::PreProcessor.call(row)
|
70
|
+
|
71
|
+
assert_equal({ 'input' => '', 'message' => nil }, processed_row)
|
72
|
+
end
|
73
|
+
|
74
|
+
def test_call_as_special_case
|
75
|
+
row = { 'input' => 'What is -3 plus 7 multiplied by -2?' }
|
76
|
+
processed_row = WordyCase::PreProcessor.call(row)
|
77
|
+
expected_row = {
|
78
|
+
'input' => 'What is -3 plus 7 multiplied by -2?',
|
79
|
+
'message' => 'You should ignore order of precedence. -3 + 7 * -2 = -8, not %s',
|
80
|
+
}
|
81
|
+
|
82
|
+
assert_equal expected_row, processed_row
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
class WordyCasesTest < Minitest::Test
|
87
|
+
def test_call
|
88
|
+
json = {
|
89
|
+
cases: [
|
90
|
+
{ description: 'test 1' },
|
91
|
+
{ description: 'test 2' },
|
92
|
+
]
|
93
|
+
}.to_json
|
94
|
+
|
95
|
+
expected_cases = [
|
96
|
+
WordyCase.new(description: 'test 1', message: nil, index: 0),
|
97
|
+
WordyCase.new(description: 'test 2', message: nil, index: 1),
|
98
|
+
]
|
99
|
+
|
100
|
+
assert_equal expected_cases, WordyCases.call(json)
|
101
|
+
end
|
102
|
+
end
|
data/tracks/scala/config.json
CHANGED
@@ -24,7 +24,7 @@
|
|
24
24
|
"slug": "sum-of-multiples",
|
25
25
|
"difficulty": 1,
|
26
26
|
"topics": [
|
27
|
-
"Filtering",
|
27
|
+
"Filtering",
|
28
28
|
"Sets"
|
29
29
|
]
|
30
30
|
},
|
@@ -400,6 +400,12 @@
|
|
400
400
|
"slug": "connect",
|
401
401
|
"difficulty": 1,
|
402
402
|
"topics": [
|
403
|
+
"Recursion",
|
404
|
+
"Graphs",
|
405
|
+
"Optional values",
|
406
|
+
"Algorithms",
|
407
|
+
"Games",
|
408
|
+
"Searching"
|
403
409
|
]
|
404
410
|
},
|
405
411
|
{
|
@@ -1,15 +1,4 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
Determine a winner.
|
4
|
-
|
5
|
-
The Scala exercises assume an SBT project scheme. The exercise solution source should be placed within the exercise directory/src/main/scala. The exercise unit tests can be found within the exercise directory/src/test/scala.
|
6
|
-
|
7
|
-
To run the tests simply run the command `sbt test` in the exercise directory.
|
8
|
-
|
9
|
-
For more detailed info about the Scala track see the [help page](http://help.exercism.io/getting-started-with-scala.html).
|
10
|
-
|
11
|
-
### Note
|
12
|
-
|
1
|
+
## Hints
|
13
2
|
You may notice that some test cases seem unfair. However, they may be legitimately so. For example, it is common to give young or beginner players an extra n pieces at fixed positions on the board, so mismatched piece counts can occur in an otherwise fully legal game.
|
14
3
|
|
15
4
|
In any case, this exercise cares only about determining a winner for a game that can have a variety of parameters, like board length and extra pieces. It is not interested in any other state of the game, such as who moved where, when, or whose turn it is.
|
@@ -1,3 +1,3 @@
|
|
1
|
-
scalaVersion := "2.
|
1
|
+
scalaVersion := "2.12.1"
|
2
2
|
|
3
|
-
libraryDependencies += "org.scalatest"
|
3
|
+
libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.1" % "test"
|
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.5.
|
4
|
+
version: 2.0.5.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katrina Owen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-12-
|
11
|
+
date: 2016-12-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -111,6 +111,7 @@ files:
|
|
111
111
|
- common/LICENSE
|
112
112
|
- common/README.md
|
113
113
|
- common/TOPICS.txt
|
114
|
+
- common/bin/check_required_files_present
|
114
115
|
- common/bin/jsonlint
|
115
116
|
- common/exercises/accumulate/description.md
|
116
117
|
- common/exercises/accumulate/metadata.yml
|
@@ -5051,6 +5052,70 @@ files:
|
|
5051
5052
|
- tracks/pascal/docs/RESOURCES.md
|
5052
5053
|
- tracks/pascal/docs/TESTS.md
|
5053
5054
|
- tracks/pascal/exercises/.keep
|
5055
|
+
- tracks/pascal/exercises/Hello-World/TestHelloWorld.dpr
|
5056
|
+
- tracks/pascal/exercises/Hello-World/TestHelloWorld.dproj
|
5057
|
+
- tracks/pascal/exercises/Hello-World/uHelloWorldExample.pas
|
5058
|
+
- tracks/pascal/exercises/Hello-World/uTestHelloWorld.pas
|
5059
|
+
- tracks/pascal/exercises/allergies/AllergyTests.dpr
|
5060
|
+
- tracks/pascal/exercises/allergies/AllergyTests.dproj
|
5061
|
+
- tracks/pascal/exercises/allergies/uAllergiesExample.pas
|
5062
|
+
- tracks/pascal/exercises/allergies/uAllergyTests.pas
|
5063
|
+
- tracks/pascal/exercises/bank-account/BankAccountTests.dpr
|
5064
|
+
- tracks/pascal/exercises/bank-account/BankAccountTests.dproj
|
5065
|
+
- tracks/pascal/exercises/bank-account/uBankAccountExample.pas
|
5066
|
+
- tracks/pascal/exercises/bank-account/uBankAccountTests.pas
|
5067
|
+
- tracks/pascal/exercises/beer-song/BeerSongTests.dpr
|
5068
|
+
- tracks/pascal/exercises/beer-song/BeerSongTests.dproj
|
5069
|
+
- tracks/pascal/exercises/beer-song/uBeerSongExample.pas
|
5070
|
+
- tracks/pascal/exercises/beer-song/uBeerSongTests.pas
|
5071
|
+
- tracks/pascal/exercises/binary-search/BinarySearchTest.dpr
|
5072
|
+
- tracks/pascal/exercises/binary-search/BinarySearchTest.dproj
|
5073
|
+
- tracks/pascal/exercises/binary-search/uBinarySearchExample.pas
|
5074
|
+
- tracks/pascal/exercises/binary-search/uBinarySearchTest.pas
|
5075
|
+
- tracks/pascal/exercises/bob/BobTests.dpr
|
5076
|
+
- tracks/pascal/exercises/bob/BobTests.dproj
|
5077
|
+
- tracks/pascal/exercises/bob/uBobExample.pas
|
5078
|
+
- tracks/pascal/exercises/bob/uBobTests.pas
|
5079
|
+
- tracks/pascal/exercises/book-store/BookStoreTests.dpr
|
5080
|
+
- tracks/pascal/exercises/book-store/BookStoreTests.dproj
|
5081
|
+
- tracks/pascal/exercises/book-store/uBookStoreExample.pas
|
5082
|
+
- tracks/pascal/exercises/book-store/uBookStoreTests.pas
|
5083
|
+
- tracks/pascal/exercises/bowling/BowlingTests.dpr
|
5084
|
+
- tracks/pascal/exercises/bowling/BowlingTests.dproj
|
5085
|
+
- tracks/pascal/exercises/bowling/uBowlingExample.pas
|
5086
|
+
- tracks/pascal/exercises/bowling/uBowlingTests.pas
|
5087
|
+
- tracks/pascal/exercises/circular-buffer/CircularBufferTests.dpr
|
5088
|
+
- tracks/pascal/exercises/circular-buffer/CircularBufferTests.dproj
|
5089
|
+
- tracks/pascal/exercises/circular-buffer/uCircularBufferExample.pas
|
5090
|
+
- tracks/pascal/exercises/circular-buffer/uCircularBufferTests.pas
|
5091
|
+
- tracks/pascal/exercises/clock/ClockTest.dpr
|
5092
|
+
- tracks/pascal/exercises/clock/ClockTest.dproj
|
5093
|
+
- tracks/pascal/exercises/clock/uClockExample.pas
|
5094
|
+
- tracks/pascal/exercises/clock/uClockTest.pas
|
5095
|
+
- tracks/pascal/exercises/etl/ETLtests.dpr
|
5096
|
+
- tracks/pascal/exercises/etl/ETLtests.dproj
|
5097
|
+
- tracks/pascal/exercises/etl/uETLexample.pas
|
5098
|
+
- tracks/pascal/exercises/etl/uETLtests.pas
|
5099
|
+
- tracks/pascal/exercises/hamming/Hamming.dpr
|
5100
|
+
- tracks/pascal/exercises/hamming/Hamming.dproj
|
5101
|
+
- tracks/pascal/exercises/hamming/uHammingExample.pas
|
5102
|
+
- tracks/pascal/exercises/hamming/uHammingTests.pas
|
5103
|
+
- tracks/pascal/exercises/leap/LeapTest.dpr
|
5104
|
+
- tracks/pascal/exercises/leap/LeapTest.dproj
|
5105
|
+
- tracks/pascal/exercises/leap/uLeapExample.pas
|
5106
|
+
- tracks/pascal/exercises/leap/uLeapTests.pas
|
5107
|
+
- tracks/pascal/exercises/nucleotide-count/NucleotideCountTest.dpr
|
5108
|
+
- tracks/pascal/exercises/nucleotide-count/NucleotideCountTest.dproj
|
5109
|
+
- tracks/pascal/exercises/nucleotide-count/uNucleotideCountExample.pas
|
5110
|
+
- tracks/pascal/exercises/nucleotide-count/uNucleotideCountTest.pas
|
5111
|
+
- tracks/pascal/exercises/perfect-numbers/PerfectNumbersTest.dpr
|
5112
|
+
- tracks/pascal/exercises/perfect-numbers/PerfectNumbersTest.dproj
|
5113
|
+
- tracks/pascal/exercises/perfect-numbers/uPerfectNumbersExample.pas
|
5114
|
+
- tracks/pascal/exercises/perfect-numbers/uPerfectNumbersTest.pas
|
5115
|
+
- tracks/pascal/exercises/phone-number/PhoneNumberTests.dpr
|
5116
|
+
- tracks/pascal/exercises/phone-number/PhoneNumberTests.dproj
|
5117
|
+
- tracks/pascal/exercises/phone-number/uPhoneNumberExample.pas
|
5118
|
+
- tracks/pascal/exercises/phone-number/uPhoneNumberTests.pas
|
5054
5119
|
- tracks/pascal/img/.keep
|
5055
5120
|
- tracks/perl5/.git
|
5056
5121
|
- tracks/perl5/.gitignore
|
@@ -6043,6 +6108,7 @@ files:
|
|
6043
6108
|
- tracks/ruby/exercises/sieve/sieve_test.rb
|
6044
6109
|
- tracks/ruby/exercises/simple-cipher/example.rb
|
6045
6110
|
- tracks/ruby/exercises/simple-cipher/simple_cipher_test.rb
|
6111
|
+
- tracks/ruby/exercises/simple-linked-list/.meta/.version
|
6046
6112
|
- tracks/ruby/exercises/simple-linked-list/example.rb
|
6047
6113
|
- tracks/ruby/exercises/simple-linked-list/simple_linked_list_test.rb
|
6048
6114
|
- tracks/ruby/exercises/space-age/example.rb
|
@@ -6076,7 +6142,9 @@ files:
|
|
6076
6142
|
- tracks/ruby/exercises/word-count/example.rb
|
6077
6143
|
- tracks/ruby/exercises/word-count/example.tt
|
6078
6144
|
- tracks/ruby/exercises/word-count/word_count_test.rb
|
6145
|
+
- tracks/ruby/exercises/wordy/.meta/.version
|
6079
6146
|
- tracks/ruby/exercises/wordy/example.rb
|
6147
|
+
- tracks/ruby/exercises/wordy/example.tt
|
6080
6148
|
- tracks/ruby/exercises/wordy/wordy_test.rb
|
6081
6149
|
- tracks/ruby/img/icon.png
|
6082
6150
|
- tracks/ruby/lib/acronym_cases.rb
|
@@ -6113,6 +6181,7 @@ files:
|
|
6113
6181
|
- tracks/ruby/lib/triangle_cases.rb
|
6114
6182
|
- tracks/ruby/lib/two_bucket_cases.rb
|
6115
6183
|
- tracks/ruby/lib/word_count_cases.rb
|
6184
|
+
- tracks/ruby/lib/wordy_cases.rb
|
6116
6185
|
- tracks/ruby/test/fixtures/exercises/alpha/.meta/.version
|
6117
6186
|
- tracks/ruby/test/fixtures/exercises/alpha/alpha_test.rb
|
6118
6187
|
- tracks/ruby/test/fixtures/exercises/alpha/example.rb
|
@@ -6120,6 +6189,7 @@ files:
|
|
6120
6189
|
- tracks/ruby/test/fixtures/metadata/exercises/alpha/canonical-data.json
|
6121
6190
|
- tracks/ruby/test/generator_test.rb
|
6122
6191
|
- tracks/ruby/test/test_helper.rb
|
6192
|
+
- tracks/ruby/test/wordy_cases_test.rb
|
6123
6193
|
- tracks/rust/.git
|
6124
6194
|
- tracks/rust/.gitignore
|
6125
6195
|
- tracks/rust/.travis.yml
|
@@ -6469,7 +6539,7 @@ files:
|
|
6469
6539
|
- tracks/scala/exercises/clock/example.scala
|
6470
6540
|
- tracks/scala/exercises/clock/src/main/scala/.keep
|
6471
6541
|
- tracks/scala/exercises/clock/src/test/scala/ClockTest.scala
|
6472
|
-
- tracks/scala/exercises/connect/
|
6542
|
+
- tracks/scala/exercises/connect/HINTS.md
|
6473
6543
|
- tracks/scala/exercises/connect/build.sbt
|
6474
6544
|
- tracks/scala/exercises/connect/example.scala
|
6475
6545
|
- tracks/scala/exercises/connect/src/main/scala/.keep
|