trackler 2.2.1.68 → 2.2.1.69

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/problem-specifications/exercises/pov/description.md +0 -2
  4. data/problem-specifications/exercises/protein-translation/canonical-data.json +3 -3
  5. data/problem-specifications/exercises/simple-cipher/description.md +4 -6
  6. data/tracks/csharp/exercises/all-your-base/AllYourBaseTest.cs +7 -7
  7. data/tracks/csharp/exercises/dominoes/README.md +2 -11
  8. data/tracks/csharp/exercises/reverse-string/ReverseStringTest.cs +2 -2
  9. data/tracks/dart/CONTRIBUTING.md +7 -4
  10. data/tracks/delphi/config.json +23 -20
  11. data/tracks/ecmascript/CONTRIBUTING.md +3 -0
  12. data/tracks/ecmascript/README.md +2 -5
  13. data/tracks/fsharp/config.json +11 -0
  14. data/tracks/fsharp/exercises/Exercises.sln +6 -0
  15. data/tracks/fsharp/exercises/all-your-base/AllYourBaseTest.fs +7 -7
  16. data/tracks/fsharp/exercises/diamond/Diamond.fsproj +1 -0
  17. data/tracks/fsharp/exercises/diamond/DiamondTest.fs +111 -114
  18. data/tracks/fsharp/exercises/diamond/README.md +2 -1
  19. data/tracks/fsharp/exercises/dominoes/README.md +2 -5
  20. data/tracks/fsharp/exercises/palindrome-products/Example.fs +27 -19
  21. data/tracks/fsharp/exercises/palindrome-products/PalindromeProducts.fs +3 -3
  22. data/tracks/fsharp/exercises/palindrome-products/PalindromeProductsTest.fs +52 -49
  23. data/tracks/fsharp/exercises/reverse-string/ReverseStringTest.fs +2 -2
  24. data/tracks/fsharp/exercises/spiral-matrix/Example.fs +35 -0
  25. data/tracks/fsharp/exercises/spiral-matrix/Program.fs +1 -0
  26. data/tracks/fsharp/exercises/spiral-matrix/README.md +25 -0
  27. data/tracks/fsharp/exercises/spiral-matrix/SpiralMatrix.fs +3 -0
  28. data/tracks/fsharp/exercises/spiral-matrix/SpiralMatrix.fsproj +23 -0
  29. data/tracks/fsharp/exercises/spiral-matrix/SpiralMatrixTest.fs +47 -0
  30. data/tracks/fsharp/generators/Generators.fs +42 -5
  31. data/tracks/fsharp/generators/Properties/launchSettings.json +1 -2
  32. data/tracks/java/config.json +7 -2
  33. data/tracks/java/exercises/binary-search-tree/src/test/java/BinarySearchTreeTest.java +0 -1
  34. data/tracks/javascript/.eslintignore +1 -2
  35. data/tracks/javascript/exercises/wordy/example.js +2 -2
  36. data/tracks/perl6/exercises/atbash-cipher/AtbashCipher.pm6 +6 -0
  37. data/tracks/perl6/exercises/atbash-cipher/atbash-cipher.t +2 -9
  38. data/tracks/perl6/exercises/atbash-cipher/example.yaml +8 -9
  39. data/tracks/perl6/exercises/grade-school/Example.pm6 +1 -1
  40. data/tracks/perl6/exercises/grade-school/GradeSchool.pm6 +1 -1
  41. data/tracks/perl6/exercises/grade-school/example.yaml +19 -12
  42. data/tracks/perl6/exercises/grade-school/grade-school.t +19 -12
  43. data/tracks/python/.github/stale.yml +6 -3
  44. data/tracks/python/config.json +17 -0
  45. data/tracks/python/exercises/dot-dsl/.meta/hints.md +14 -0
  46. data/tracks/python/exercises/dot-dsl/README.md +52 -0
  47. data/tracks/python/exercises/dot-dsl/dot_dsl.py +27 -0
  48. data/tracks/python/exercises/dot-dsl/dot_dsl_test.py +117 -0
  49. data/tracks/python/exercises/dot-dsl/example.py +52 -0
  50. data/tracks/python/exercises/proverb/README.md +5 -2
  51. data/tracks/python/exercises/proverb/example.py +5 -5
  52. data/tracks/python/exercises/proverb/proverb.py +1 -1
  53. data/tracks/python/exercises/proverb/proverb_test.py +42 -52
  54. data/tracks/python/exercises/say/example.py +2 -2
  55. data/tracks/python/exercises/say/say_test.py +2 -2
  56. data/tracks/rust/README.md +2 -0
  57. data/tracks/rust/_test/count-ignores.sh +15 -8
  58. data/tracks/rust/bin/test-exercise +4 -1
  59. data/tracks/rust/exercises/perfect-numbers/.meta/ignore-count-ignores +6 -0
  60. data/tracks/rust/exercises/perfect-numbers/tests/perfect-numbers.rs +32 -22
  61. data/tracks/typescript/config.json +16 -0
  62. data/tracks/typescript/exercises/two-bucket/README.md +66 -0
  63. data/tracks/typescript/exercises/two-bucket/package.json +36 -0
  64. data/tracks/typescript/exercises/two-bucket/tsconfig.json +22 -0
  65. data/tracks/typescript/exercises/two-bucket/tslint.json +127 -0
  66. data/tracks/typescript/exercises/two-bucket/two-bucket.example.ts +97 -0
  67. data/tracks/typescript/exercises/two-bucket/two-bucket.test.ts +47 -0
  68. data/tracks/typescript/exercises/two-bucket/two-bucket.ts +0 -0
  69. data/tracks/typescript/exercises/two-bucket/yarn.lock +2624 -0
  70. metadata +23 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 93727b2027f0b9bb82b47a47508ca7ffcc6ff35d
4
- data.tar.gz: 5b5ad9daef87088409e3e8b2c22ad16803cddd8d
3
+ metadata.gz: c900f215603f2847b56ef3c2542264b3623c134a
4
+ data.tar.gz: 9cee0a9156eace5beff7d34a075513d00b956307
5
5
  SHA512:
6
- metadata.gz: 76aff154bb6cfb996c616f4f77cfd2de03d6029fbf1cab3255bb162310a6b41767576a818b001abeec9f3e875b27bc9118833ba83ae8e65a5ed35df9427be62e
7
- data.tar.gz: 361c13c1a88ce84f99c1bfea50d5af3590fc9ee21a85a22e10c3333089f29cba08211a6e703c6eb1d23c5185636170fd7c93603f4ef6b889e28261121e249f6c
6
+ metadata.gz: f04eed61e824d8cfdcc8baa814ca910ef02348c106ab2fe518778458eada7dc50d70d9ee816bd9553891e9088ddc50aa9d4f2a526c41cbeddf58d838064c9a4f
7
+ data.tar.gz: 1a2cbfd9bbb5c12dcdcfce7aaf8577cbc20732ba6eaaa143cdd52351cc044ef7682cf450dbbc8e948c1ac0c167066502b3584c380297ab5a3d376e60e368aa99
@@ -1,3 +1,3 @@
1
1
  module Trackler
2
- VERSION = "2.2.1.68"
2
+ VERSION = "2.2.1.69"
3
3
  end
@@ -1,7 +1,5 @@
1
1
  Reparent a graph on a selected node.
2
2
 
3
- # Tree Reparenting
4
-
5
3
  This exercise is all about re-orientating a graph to see things from a different
6
4
  point of view. For example family trees are usually presented from the
7
5
  ancestor's perspective:
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "exercise": "protein-translation",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "cases": [
5
5
  {
6
6
  "description": "Translate input RNA sequences into proteins",
@@ -136,13 +136,13 @@
136
136
  "expected": ["Methionine","Phenylalanine"]
137
137
  },
138
138
  {
139
- "description": "Translation stops if STOP codon in middle of sequence of three-codon sequence",
139
+ "description": "Translation stops if STOP codon in middle of three-codon sequence",
140
140
  "property": "proteins",
141
141
  "strand": "UGGUAGUGG",
142
142
  "expected": ["Tryptophan"]
143
143
  },
144
144
  {
145
- "description": "Translation stops if codon in middle of sequence of six-codon sequence",
145
+ "description": "Translation stops if STOP codon in middle of six-codon sequence",
146
146
  "property": "proteins",
147
147
  "strand": "UGGUGUUAUUAAUGGUUU",
148
148
  "expected": ["Tryptophan","Cysteine","Tyrosine"]
@@ -56,15 +56,13 @@ would get the same thing as the Caesar Cipher.
56
56
 
57
57
  The weakest link in any cipher is the human being. Let's make your
58
58
  substitution cipher a little more fault tolerant by providing a source
59
- of randomness and ensuring that the key is not composed of numbers or
60
- capital letters.
59
+ of randomness and ensuring that the key contains only lowercase letters.
61
60
 
62
61
  If someone doesn't submit a key at all, generate a truly random key of
63
- at least 100 characters in length, accessible via Cipher#key (the #
64
- syntax means instance variable)
62
+ at least 100 characters in length.
65
63
 
66
- If the key submitted has capital letters or numbers, throw an
67
- ArgumentError with a message to that effect.
64
+ If the key submitted is not composed only of lowercase letters, your
65
+ solution should handle the error in a language-appropriate way.
68
66
 
69
67
  ## Extensions
70
68
 
@@ -1,4 +1,4 @@
1
- // This file was auto-generated based on version 2.0.0 of the canonical data.
1
+ // This file was auto-generated based on version 2.0.1 of the canonical data.
2
2
 
3
3
  using Xunit;
4
4
  using System;
@@ -126,7 +126,7 @@ public class AllYourBaseTest
126
126
  }
127
127
 
128
128
  [Fact(Skip = "Remove to run test")]
129
- public void First_base_is_one()
129
+ public void Input_base_is_one()
130
130
  {
131
131
  var inputBase = 1;
132
132
  var inputDigits = new int[0];
@@ -135,7 +135,7 @@ public class AllYourBaseTest
135
135
  }
136
136
 
137
137
  [Fact(Skip = "Remove to run test")]
138
- public void First_base_is_zero()
138
+ public void Input_base_is_zero()
139
139
  {
140
140
  var inputBase = 0;
141
141
  var inputDigits = new int[0];
@@ -144,7 +144,7 @@ public class AllYourBaseTest
144
144
  }
145
145
 
146
146
  [Fact(Skip = "Remove to run test")]
147
- public void First_base_is_negative()
147
+ public void Input_base_is_negative()
148
148
  {
149
149
  var inputBase = -2;
150
150
  var inputDigits = new[] { 1 };
@@ -171,7 +171,7 @@ public class AllYourBaseTest
171
171
  }
172
172
 
173
173
  [Fact(Skip = "Remove to run test")]
174
- public void Second_base_is_one()
174
+ public void Output_base_is_one()
175
175
  {
176
176
  var inputBase = 2;
177
177
  var inputDigits = new[] { 1, 0, 1, 0, 1, 0 };
@@ -180,7 +180,7 @@ public class AllYourBaseTest
180
180
  }
181
181
 
182
182
  [Fact(Skip = "Remove to run test")]
183
- public void Second_base_is_zero()
183
+ public void Output_base_is_zero()
184
184
  {
185
185
  var inputBase = 10;
186
186
  var inputDigits = new[] { 7 };
@@ -189,7 +189,7 @@ public class AllYourBaseTest
189
189
  }
190
190
 
191
191
  [Fact(Skip = "Remove to run test")]
192
- public void Second_base_is_negative()
192
+ public void Output_base_is_negative()
193
193
  {
194
194
  var inputBase = 2;
195
195
  var inputDigits = new[] { 1 };
@@ -1,24 +1,15 @@
1
1
  # Dominoes
2
2
 
3
- Make a chain of dominoes.
4
-
5
- Compute a way to order a given set of dominoes in such a way that they form a
3
+ Compute whether there exists a way to order a given set of dominoes in such a way that they form a
6
4
  correct domino chain (the dots on one half of a stone match the dots on the
7
5
  neighbouring half of an adjacent stone) and that dots on the halfs of the stones
8
6
  which don't have a neighbour (the first and last stone) match each other.
9
7
 
10
- For example given the stones `21`, `23` and `13` you should compute something
11
- like `12 23 31` or `32 21 13` or `13 32 21` etc, where the first and last numbers are the same.
8
+ For example given the stones `21`, `23` and `13` you should declare that there exists a possible chain (for example, `12`, `23` and `31` is a possible chain).
12
9
 
13
10
  For stones 12, 41 and 23 the resulting chain is not valid: 41 12 23's first and last numbers are not the same. 4 != 3
14
11
 
15
12
  Some test cases may use duplicate stones in a chain solution, assume that multiple Domino sets are being used.
16
13
 
17
- ### Submitting Exercises
18
-
19
- Note that, when trying to submit an exercise, make sure the exercise file that you're submitting is in the `exercism/csharp/<exerciseName>` directory.
20
-
21
- For example, if you're submitting `bob.cs` for the Bob exercise, the submit command would be something like `exercism submit <path_to_exercism_dir>/csharp/bob/bob.cs`.
22
-
23
14
  ## Submitting Incomplete Solutions
24
15
  It's possible to submit an incomplete solution so you can see how others have completed the exercise.
@@ -1,11 +1,11 @@
1
- // This file was auto-generated based on version 1.0.0 of the canonical data.
1
+ // This file was auto-generated based on version 1.0.1 of the canonical data.
2
2
 
3
3
  using Xunit;
4
4
 
5
5
  public class ReverseStringTest
6
6
  {
7
7
  [Fact]
8
- public void Empty_string()
8
+ public void An_empty_string()
9
9
  {
10
10
  Assert.Equal("", ReverseString.Reverse(""));
11
11
  }
@@ -32,16 +32,17 @@ Please keep the following in mind:
32
32
 
33
33
  - Please run the following commands before submitting your PR:
34
34
  * `pub run test` - All the tests for Dart exercises can be run from the top level of the repo with this command
35
- * `bin/configlet lint .` - Checks the config.json for formatting issues
35
+ * `bin/fetch-configlet` - Downloads the latest version of configlet and stores it in the bin/ directory
36
+ * `bin/configlet lint --track-id dart .` - Checks the config.json for formatting issues
36
37
  * `bin/configlet fmt .` - Formats the config.json
37
38
  * `bin/check_formatting` - Checks All the Dart files for formatting issues
38
39
  * `pub run dart_style:format -l 120 -w .` - Formats all the Dart files
39
40
 
40
- - Once a Pull Request is approved, the contributing branch will be Rebased onto the latest version of our master branch.
41
+ - Once a Pull Request is approved, the contributing branch will be rebased onto the latest version of our master branch.
41
42
 
42
43
  ## Contributing a New Exercise ###
43
44
 
44
- - All Exercism exercises must be defined in [problem-specifications](https://github.com/exercism/problem-specifications/tree/master/exercises) before they are implemented for a specific track. Please submit a PR there if your exercise is new to Exercism.
45
+ - All Exercism exercises must be defined in [problem-specifications](https://github.com/exercism/problem-specifications/tree/master/exercises) before they are implemented for a specific track. If your exercise is new, please submit a PR to [exercism/problem-specification].
45
46
 
46
47
  - Please make sure the new exercise conforms to specifications in the [exercism/problem-specifications](https://github.com/exercism/problem-specifications) repo.
47
48
 
@@ -58,4 +59,6 @@ Please keep the following in mind:
58
59
 
59
60
  - Please do not commit any configuration files or directories inside the exercise other than pubspec.lock and pubspec.yaml
60
61
 
61
- - Be sure to add it to the appropriate place in the `config.json` file. Also, please run `bin/fetch-configlet && bin/configlet lint .` to ensure the exercise is configured correctly.
62
+ - Be sure to add the new exercise to the appropriate place in the `config.json` file.
63
+
64
+ - Please run `bin/fetch-configlet && bin/configlet lint --track-id dart .` to ensure the exercise is configured correctly.
@@ -3,7 +3,7 @@
3
3
  "blurb": "Object Pascal based, Delphi is great for developing cross-platform desktop, mobile, web, and console applications.",
4
4
  "exercises": [
5
5
  {
6
- "core": false,
6
+ "core": true,
7
7
  "difficulty": 1,
8
8
  "slug": "hello-world",
9
9
  "topics": [
@@ -13,7 +13,7 @@
13
13
  "uuid": "497011b8-4dcf-4084-a7d1-11ea954e605f"
14
14
  },
15
15
  {
16
- "core": true,
16
+ "core": false,
17
17
  "difficulty": 1,
18
18
  "slug": "two-fer",
19
19
  "topics": [
@@ -50,29 +50,29 @@
50
50
  "strings",
51
51
  "transforming"
52
52
  ],
53
- "unlocked_by": null,
53
+ "unlocked_by": "roman-numerals",
54
54
  "uuid": "4a50bfd2-f6c9-480e-af82-d468cf585f0d"
55
55
  },
56
56
  {
57
- "core": false,
57
+ "core": true,
58
58
  "difficulty": 2,
59
59
  "slug": "raindrops",
60
60
  "topics": [
61
61
  "filtering",
62
62
  "text_formatting"
63
63
  ],
64
- "unlocked_by": "two-fer",
64
+ "unlocked_by": null,
65
65
  "uuid": "2617f4a3-cf0e-4690-a464-45eac3f97317"
66
66
  },
67
67
  {
68
68
  "core": false,
69
- "difficulty": 2,
69
+ "difficulty": 1,
70
70
  "slug": "hamming",
71
71
  "topics": [
72
72
  "filtering",
73
73
  "strings"
74
74
  ],
75
- "unlocked_by": null,
75
+ "unlocked_by": "hello-world",
76
76
  "uuid": "c623f1f2-8e54-4c46-a577-2570fa2f317b"
77
77
  },
78
78
  {
@@ -82,7 +82,7 @@
82
82
  "topics": [
83
83
  "classes"
84
84
  ],
85
- "unlocked_by": null,
85
+ "unlocked_by": "clock",
86
86
  "uuid": "777f9f9e-acf8-4b73-89c7-ee08d4ff49e3"
87
87
  },
88
88
  {
@@ -108,17 +108,18 @@
108
108
  "uuid": "f22f0ac1-3836-4ece-9c47-491929c8fc85"
109
109
  },
110
110
  {
111
- "core": true,
111
+ "core": false,
112
112
  "difficulty": 2,
113
113
  "slug": "grains",
114
114
  "topics": [
115
115
  "integers",
116
116
  "recursion"
117
117
  ],
118
+ "unlocked_by": "leap",
118
119
  "uuid": "d0ddd5dc-30cd-4876-937d-9e89bae7dc93"
119
120
  },
120
121
  {
121
- "core": false,
122
+ "core": true,
122
123
  "difficulty": 2,
123
124
  "slug": "collatz-conjecture",
124
125
  "topics": [
@@ -137,17 +138,18 @@
137
138
  "algorithms",
138
139
  "text_formatting"
139
140
  ],
140
- "unlocked_by": "two-fer",
141
+ "unlocked_by": "raindrops",
141
142
  "uuid": "48f443f6-3bbc-4086-9f47-f46bcfa0623a"
142
143
  },
143
144
  {
144
- "core": true,
145
+ "core": false,
145
146
  "difficulty": 3,
146
147
  "slug": "phone-number",
147
148
  "topics": [
148
149
  "parsing",
149
150
  "transforming"
150
151
  ],
152
+ "unlocked_by": "collatz-conjecture",
151
153
  "uuid": "cba5cf99-8001-4113-af80-cf9c041f1b21"
152
154
  },
153
155
  {
@@ -161,7 +163,7 @@
161
163
  "uuid": "964abaeb-b1b6-4609-bb9e-ca569302f406"
162
164
  },
163
165
  {
164
- "core": false,
166
+ "core": true,
165
167
  "difficulty": 3,
166
168
  "slug": "binary-search",
167
169
  "topics": [
@@ -169,7 +171,7 @@
169
171
  "recursion",
170
172
  "searching"
171
173
  ],
172
- "unlocked_by": "grains",
174
+ "unlocked_by": null,
173
175
  "uuid": "b1cfe374-4881-4e06-9333-d5d9b367580f"
174
176
  },
175
177
  {
@@ -183,13 +185,14 @@
183
185
  "uuid": "0223dfe4-3ff4-4f4e-8cd2-821e1fd50217"
184
186
  },
185
187
  {
186
- "core": true,
188
+ "core": false,
187
189
  "difficulty": 3,
188
190
  "slug": "triangle",
189
191
  "topics": [
190
192
  "enumerations",
191
193
  "integers"
192
194
  ],
195
+ "unlocked_by": "leap",
193
196
  "uuid": "f5d43bcd-34fe-4b96-a687-254f7c0f5601"
194
197
  },
195
198
  {
@@ -224,14 +227,14 @@
224
227
  "uuid": "f949b958-d2e0-4f21-a6db-12ba89f8ab57"
225
228
  },
226
229
  {
227
- "core": false,
230
+ "core": true,
228
231
  "difficulty": 5,
229
232
  "slug": "minesweeper",
230
233
  "topics": [
231
234
  "parsing",
232
235
  "transforming"
233
236
  ],
234
- "unlocked_by": "phone-number",
237
+ "unlocked_by": null,
235
238
  "uuid": "5ab52a90-8a72-42f8-b430-042436041348"
236
239
  },
237
240
  {
@@ -252,7 +255,7 @@
252
255
  "algorithms",
253
256
  "control_flow_loops"
254
257
  ],
255
- "unlocked_by": null,
258
+ "unlocked_by": "circular-buffer",
256
259
  "uuid": "88f7ab7d-30c1-4cb5-81ff-1114b5f78291"
257
260
  },
258
261
  {
@@ -287,7 +290,7 @@
287
290
  "strings",
288
291
  "transforming"
289
292
  ],
290
- "unlocked_by": "phone-number",
293
+ "unlocked_by": "minesweeper",
291
294
  "uuid": "24d81651-de3b-4cc8-8a4a-67cefc0453f6"
292
295
  },
293
296
  {
@@ -299,7 +302,7 @@
299
302
  "parsing",
300
303
  "sorting"
301
304
  ],
302
- "unlocked_by": null,
305
+ "unlocked_by": "minesweeper",
303
306
  "uuid": "d4f0509b-2687-4ee2-adbb-2a1a295a9975"
304
307
  }
305
308
  ],
@@ -0,0 +1,3 @@
1
+ We like to keep the guidelines for all of our different language tracks in one place.
2
+
3
+ You'll find them in the [docs repo](https://github.com/exercism/docs). Happy contributing! 😊
@@ -30,9 +30,6 @@ The make script will test all exercises:
30
30
  Pass the exercise name to make script to run the tests for a specific exercise:
31
31
 
32
32
  make test-assignment ASSIGNMENT=hello-world
33
-
34
-
33
+
35
34
  ## Contributing Guide
36
-
37
- For an in-depth discussion of how exercism language tracks and exercises work, please see the [contributing guide](https://github.com/exercism/x-api/blob/master/CONTRIBUTING.md#the-exercise-data)
38
-
35
+ For an in-depth discussion of how exercism language tracks and exercises work, please see [CONTRIBUTING.md](https://github.com/exercism/ecmascript/blob/master/CONTRIBUTING.md)
@@ -866,6 +866,17 @@
866
866
  "unlocked_by": "accumulate",
867
867
  "uuid": "3741977a-adff-47bb-a9c5-c2e444805bac"
868
868
  },
869
+ {
870
+ "core": false,
871
+ "difficulty": 5,
872
+ "slug": "spiral-matrix",
873
+ "topics": [
874
+ "algorithms",
875
+ "matrices"
876
+ ],
877
+ "unlocked_by": "matrix",
878
+ "uuid": "52f8f299-b93b-4f44-bd5b-b445741b285d"
879
+ },
869
880
  {
870
881
  "core": false,
871
882
  "difficulty": 6,
@@ -220,6 +220,8 @@ Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "RotationalCipher", "rotatio
220
220
  EndProject
221
221
  Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "IsbnVerifier", "isbn-verifier\IsbnVerifier.fsproj", "{531D1AB8-1297-4DE2-9B9B-3742A648EDB7}"
222
222
  EndProject
223
+ Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "SpiralMatrix", "spiral-matrix\SpiralMatrix.fsproj", "{4C02F0E3-90F6-4ACD-9D34-EDFF301B058D}"
224
+ EndProject
223
225
  Global
224
226
  GlobalSection(SolutionConfigurationPlatforms) = preSolution
225
227
  Debug|Any CPU = Debug|Any CPU
@@ -662,6 +664,10 @@ Global
662
664
  {531D1AB8-1297-4DE2-9B9B-3742A648EDB7}.Debug|Any CPU.Build.0 = Debug|Any CPU
663
665
  {531D1AB8-1297-4DE2-9B9B-3742A648EDB7}.Release|Any CPU.ActiveCfg = Release|Any CPU
664
666
  {531D1AB8-1297-4DE2-9B9B-3742A648EDB7}.Release|Any CPU.Build.0 = Release|Any CPU
667
+ {4C02F0E3-90F6-4ACD-9D34-EDFF301B058D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
668
+ {4C02F0E3-90F6-4ACD-9D34-EDFF301B058D}.Debug|Any CPU.Build.0 = Debug|Any CPU
669
+ {4C02F0E3-90F6-4ACD-9D34-EDFF301B058D}.Release|Any CPU.ActiveCfg = Release|Any CPU
670
+ {4C02F0E3-90F6-4ACD-9D34-EDFF301B058D}.Release|Any CPU.Build.0 = Release|Any CPU
665
671
  EndGlobalSection
666
672
  GlobalSection(SolutionProperties) = preSolution
667
673
  HideSolutionNode = FALSE
@@ -1,4 +1,4 @@
1
- // This file was auto-generated based on version 2.0.0 of the canonical data.
1
+ // This file was auto-generated based on version 2.0.1 of the canonical data.
2
2
 
3
3
  module AllYourBaseTest
4
4
 
@@ -104,7 +104,7 @@ let ``Leading zeros`` () =
104
104
  rebase inputBase inputDigits outputBase |> should equal expected
105
105
 
106
106
  [<Fact(Skip = "Remove to run test")>]
107
- let ``First base is one`` () =
107
+ let ``Input base is one`` () =
108
108
  let inputBase = 1
109
109
  let inputDigits = []
110
110
  let outputBase = 10
@@ -112,7 +112,7 @@ let ``First base is one`` () =
112
112
  rebase inputBase inputDigits outputBase |> should equal expected
113
113
 
114
114
  [<Fact(Skip = "Remove to run test")>]
115
- let ``First base is zero`` () =
115
+ let ``Input base is zero`` () =
116
116
  let inputBase = 0
117
117
  let inputDigits = []
118
118
  let outputBase = 10
@@ -120,7 +120,7 @@ let ``First base is zero`` () =
120
120
  rebase inputBase inputDigits outputBase |> should equal expected
121
121
 
122
122
  [<Fact(Skip = "Remove to run test")>]
123
- let ``First base is negative`` () =
123
+ let ``Input base is negative`` () =
124
124
  let inputBase = -2
125
125
  let inputDigits = [1]
126
126
  let outputBase = 10
@@ -144,7 +144,7 @@ let ``Invalid positive digit`` () =
144
144
  rebase inputBase inputDigits outputBase |> should equal expected
145
145
 
146
146
  [<Fact(Skip = "Remove to run test")>]
147
- let ``Second base is one`` () =
147
+ let ``Output base is one`` () =
148
148
  let inputBase = 2
149
149
  let inputDigits = [1; 0; 1; 0; 1; 0]
150
150
  let outputBase = 1
@@ -152,7 +152,7 @@ let ``Second base is one`` () =
152
152
  rebase inputBase inputDigits outputBase |> should equal expected
153
153
 
154
154
  [<Fact(Skip = "Remove to run test")>]
155
- let ``Second base is zero`` () =
155
+ let ``Output base is zero`` () =
156
156
  let inputBase = 10
157
157
  let inputDigits = [7]
158
158
  let outputBase = 0
@@ -160,7 +160,7 @@ let ``Second base is zero`` () =
160
160
  rebase inputBase inputDigits outputBase |> should equal expected
161
161
 
162
162
  [<Fact(Skip = "Remove to run test")>]
163
- let ``Second base is negative`` () =
163
+ let ``Output base is negative`` () =
164
164
  let inputBase = 2
165
165
  let inputDigits = [1]
166
166
  let outputBase = -7
@@ -17,6 +17,7 @@
17
17
  <PackageReference Include="xunit" Version="2.3.1" />
18
18
  <PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
19
19
  <PackageReference Include="FsUnit.xUnit" Version="3.0.0" />
20
+ <PackageReference Include="FsCheck.Xunit" Version="2.10.4" />
20
21
  <DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
21
22
  </ItemGroup>
22
23