trackler 2.2.1.41 → 2.2.1.42

Sign up to get free protection for your applications and to get access to all the features.
Files changed (289) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +0 -3
  3. data/lib/trackler/version.rb +1 -1
  4. data/problem-specifications/exercises/change/metadata.yml +0 -3
  5. data/tracks/c/exercises/allergies/src/allergies.h +12 -12
  6. data/tracks/c/exercises/allergies/src/example.c +4 -4
  7. data/tracks/c/exercises/allergies/src/example.h +14 -14
  8. data/tracks/c/exercises/allergies/test/test_allergies.c +45 -45
  9. data/tracks/cfml/config.json +139 -193
  10. data/tracks/cfml/config/maintainers.json +11 -11
  11. data/tracks/csharp/exercises/etl/Etl.cs +1 -1
  12. data/tracks/csharp/exercises/etl/EtlTest.cs +102 -0
  13. data/tracks/csharp/exercises/etl/Example.cs +1 -1
  14. data/tracks/csharp/exercises/pascals-triangle/Example.cs +10 -1
  15. data/tracks/csharp/exercises/pascals-triangle/PascalsTriangle.cs +1 -0
  16. data/tracks/csharp/exercises/pascals-triangle/PascalsTriangleTest.cs +17 -50
  17. data/tracks/csharp/exercises/saddle-points/SaddlePointsTest.cs +75 -0
  18. data/tracks/csharp/generators/Exercises/Etl.cs +61 -0
  19. data/tracks/csharp/generators/Exercises/PascalsTriangle.cs +28 -0
  20. data/tracks/csharp/generators/Exercises/SaddlePoints.cs +50 -0
  21. data/tracks/csharp/generators/Output/ValueFormatter.cs +29 -0
  22. data/tracks/java/config.json +40 -5
  23. data/tracks/java/exercises/triangle/.meta/src/reference/java/Triangle.java +11 -10
  24. data/tracks/java/exercises/triangle/src/main/java/Triangle.java +9 -1
  25. data/tracks/java/exercises/triangle/src/test/java/TriangleTest.java +12 -12
  26. data/tracks/python/exercises/phone-number/phone_number.py +1 -1
  27. data/tracks/python/exercises/rna-transcription/rna_transcription.py +1 -1
  28. data/tracks/python/exercises/run-length-encoding/run_length_encoding.py +2 -2
  29. data/tracks/python/exercises/saddle-points/saddle_points.py +1 -1
  30. data/tracks/rust/exercises/etl/README.md +1 -1
  31. data/tracks/rust/exercises/ocr-numbers/README.md +1 -1
  32. data/tracks/rust/exercises/pascals-triangle/README.md +1 -1
  33. data/tracks/rust/exercises/rna-transcription/README.md +1 -1
  34. data/tracks/scala/exercises/meetup/src/test/scala/MeetupTest.scala +118 -93
  35. data/tracks/scala/testgen/src/main/scala/MeetupTestGenerator.scala +48 -0
  36. data/tracks/scala/testgen/src/main/scala/testgen/CanonicalDataParser.scala +1 -1
  37. data/tracks/typescript/config.json +13 -0
  38. data/tracks/typescript/exercises/bob/bob.ts +7 -0
  39. data/tracks/typescript/exercises/hello-world/hello-world.ts +7 -0
  40. data/tracks/typescript/exercises/leap/leap.ts +5 -0
  41. data/tracks/typescript/exercises/pangram/pangram.ts +11 -0
  42. data/tracks/typescript/exercises/prime-factors/README.md +73 -0
  43. data/tracks/typescript/exercises/prime-factors/package.json +36 -0
  44. data/tracks/typescript/exercises/prime-factors/prime-factors.example.ts +14 -0
  45. data/tracks/typescript/exercises/prime-factors/prime-factors.test.ts +25 -0
  46. data/tracks/{coldfusion/exercises/acronym/.meta/HINTS.md → typescript/exercises/prime-factors/prime-factors.ts} +0 -0
  47. data/tracks/typescript/exercises/prime-factors/tsconfig.json +22 -0
  48. data/tracks/typescript/exercises/prime-factors/tslint.json +127 -0
  49. data/tracks/typescript/exercises/prime-factors/yarn.lock +2305 -0
  50. data/tracks/typescript/exercises/rna-transcription/rna-transcription.ts +7 -0
  51. metadata +16 -242
  52. data/tracks/coldfusion/.gitignore +0 -5
  53. data/tracks/coldfusion/.travis.yml +0 -18
  54. data/tracks/coldfusion/CONTRIBUTING.md +0 -10
  55. data/tracks/coldfusion/LICENSE +0 -21
  56. data/tracks/coldfusion/README.md +0 -92
  57. data/tracks/coldfusion/bin/fetch-configlet +0 -32
  58. data/tracks/coldfusion/config.json +0 -223
  59. data/tracks/coldfusion/config/exercise_readme.go.tmpl +0 -16
  60. data/tracks/coldfusion/config/maintainers.json +0 -13
  61. data/tracks/coldfusion/docs/ABOUT.md +0 -10
  62. data/tracks/coldfusion/docs/EXERCISE_README_INSERT.md +0 -15
  63. data/tracks/coldfusion/docs/INSTALLATION.md +0 -35
  64. data/tracks/coldfusion/docs/LEARNING.md +0 -37
  65. data/tracks/coldfusion/docs/RESOURCES.md +0 -29
  66. data/tracks/coldfusion/docs/SNIPPET.txt +0 -8
  67. data/tracks/coldfusion/docs/TESTS.md +0 -13
  68. data/tracks/coldfusion/exercises/acronym/Acronym.cfc +0 -13
  69. data/tracks/coldfusion/exercises/acronym/AcronymTest.cfc +0 -43
  70. data/tracks/coldfusion/exercises/acronym/Solution.cfc +0 -22
  71. data/tracks/coldfusion/exercises/acronym/SolutionTest.cfc +0 -7
  72. data/tracks/coldfusion/exercises/acronym/TestRunner.cfc +0 -103
  73. data/tracks/coldfusion/exercises/acronym/box.json +0 -8
  74. data/tracks/coldfusion/exercises/acronym/index.cfm +0 -37
  75. data/tracks/coldfusion/exercises/atbash-cipher/.meta/HINTS.md +0 -0
  76. data/tracks/coldfusion/exercises/atbash-cipher/AtbashCipher.cfc +0 -14
  77. data/tracks/coldfusion/exercises/atbash-cipher/AtbashCipherTest.cfc +0 -71
  78. data/tracks/coldfusion/exercises/atbash-cipher/Solution.cfc +0 -56
  79. data/tracks/coldfusion/exercises/atbash-cipher/SolutionTest.cfc +0 -7
  80. data/tracks/coldfusion/exercises/atbash-cipher/TestRunner.cfc +0 -103
  81. data/tracks/coldfusion/exercises/atbash-cipher/box.json +0 -8
  82. data/tracks/coldfusion/exercises/atbash-cipher/index.cfm +0 -37
  83. data/tracks/coldfusion/exercises/bob/.meta/HINTS.md +0 -0
  84. data/tracks/coldfusion/exercises/bob/Bob.cfc +0 -13
  85. data/tracks/coldfusion/exercises/bob/BobTest.cfc +0 -115
  86. data/tracks/coldfusion/exercises/bob/Solution.cfc +0 -27
  87. data/tracks/coldfusion/exercises/bob/SolutionTest.cfc +0 -7
  88. data/tracks/coldfusion/exercises/bob/TestRunner.cfc +0 -103
  89. data/tracks/coldfusion/exercises/bob/box.json +0 -8
  90. data/tracks/coldfusion/exercises/bob/index.cfm +0 -37
  91. data/tracks/coldfusion/exercises/diamond/.meta/HINTS.md +0 -0
  92. data/tracks/coldfusion/exercises/diamond/Diamond.cfc +0 -13
  93. data/tracks/coldfusion/exercises/diamond/DiamondTest.cfc +0 -35
  94. data/tracks/coldfusion/exercises/diamond/Solution.cfc +0 -35
  95. data/tracks/coldfusion/exercises/diamond/SolutionTest.cfc +0 -7
  96. data/tracks/coldfusion/exercises/diamond/TestRunner.cfc +0 -103
  97. data/tracks/coldfusion/exercises/diamond/box.json +0 -8
  98. data/tracks/coldfusion/exercises/diamond/index.cfm +0 -37
  99. data/tracks/coldfusion/exercises/difference-of-squares/.meta/HINTS.md +0 -0
  100. data/tracks/coldfusion/exercises/difference-of-squares/DifferenceOfSquares.cfc +0 -18
  101. data/tracks/coldfusion/exercises/difference-of-squares/DifferenceOfSquaresTest.cfc +0 -63
  102. data/tracks/coldfusion/exercises/difference-of-squares/Solution.cfc +0 -28
  103. data/tracks/coldfusion/exercises/difference-of-squares/SolutionTest.cfc +0 -7
  104. data/tracks/coldfusion/exercises/difference-of-squares/TestRunner.cfc +0 -103
  105. data/tracks/coldfusion/exercises/difference-of-squares/box.json +0 -8
  106. data/tracks/coldfusion/exercises/difference-of-squares/index.cfm +0 -37
  107. data/tracks/coldfusion/exercises/flatten-array/.meta/HINTS.md +0 -0
  108. data/tracks/coldfusion/exercises/flatten-array/FlattenArray.cfc +0 -13
  109. data/tracks/coldfusion/exercises/flatten-array/FlattenArrayTest.cfc +0 -42
  110. data/tracks/coldfusion/exercises/flatten-array/Solution.cfc +0 -26
  111. data/tracks/coldfusion/exercises/flatten-array/SolutionTest.cfc +0 -7
  112. data/tracks/coldfusion/exercises/flatten-array/TestRunner.cfc +0 -103
  113. data/tracks/coldfusion/exercises/flatten-array/box.json +0 -8
  114. data/tracks/coldfusion/exercises/flatten-array/index.cfm +0 -37
  115. data/tracks/coldfusion/exercises/gigasecond/.meta/HINTS.md +0 -0
  116. data/tracks/coldfusion/exercises/gigasecond/Gigasecond.cfc +0 -13
  117. data/tracks/coldfusion/exercises/gigasecond/GigasecondTest.cfc +0 -39
  118. data/tracks/coldfusion/exercises/gigasecond/Solution.cfc +0 -16
  119. data/tracks/coldfusion/exercises/gigasecond/SolutionTest.cfc +0 -7
  120. data/tracks/coldfusion/exercises/gigasecond/TestRunner.cfc +0 -103
  121. data/tracks/coldfusion/exercises/gigasecond/box.json +0 -8
  122. data/tracks/coldfusion/exercises/gigasecond/index.cfm +0 -37
  123. data/tracks/coldfusion/exercises/grains/.meta/HINTS.md +0 -0
  124. data/tracks/coldfusion/exercises/grains/Grains.cfc +0 -14
  125. data/tracks/coldfusion/exercises/grains/GrainsTest.cfc +0 -63
  126. data/tracks/coldfusion/exercises/grains/Solution.cfc +0 -22
  127. data/tracks/coldfusion/exercises/grains/SolutionTest.cfc +0 -7
  128. data/tracks/coldfusion/exercises/grains/TestRunner.cfc +0 -103
  129. data/tracks/coldfusion/exercises/grains/box.json +0 -8
  130. data/tracks/coldfusion/exercises/grains/index.cfm +0 -37
  131. data/tracks/coldfusion/exercises/hamming/.meta/HINTS.md +0 -0
  132. data/tracks/coldfusion/exercises/hamming/Hamming.cfc +0 -13
  133. data/tracks/coldfusion/exercises/hamming/HammingTest.cfc +0 -75
  134. data/tracks/coldfusion/exercises/hamming/Solution.cfc +0 -25
  135. data/tracks/coldfusion/exercises/hamming/SolutionTest.cfc +0 -7
  136. data/tracks/coldfusion/exercises/hamming/TestRunner.cfc +0 -103
  137. data/tracks/coldfusion/exercises/hamming/box.json +0 -8
  138. data/tracks/coldfusion/exercises/hamming/index.cfm +0 -37
  139. data/tracks/coldfusion/exercises/hello-world/HelloWorld.cfc +0 -13
  140. data/tracks/coldfusion/exercises/hello-world/HelloWorldTest.cfc +0 -18
  141. data/tracks/coldfusion/exercises/hello-world/Solution.cfc +0 -13
  142. data/tracks/coldfusion/exercises/hello-world/SolutionTest.cfc +0 -7
  143. data/tracks/coldfusion/exercises/hello-world/TestRunner.cfc +0 -103
  144. data/tracks/coldfusion/exercises/hello-world/box.json +0 -8
  145. data/tracks/coldfusion/exercises/hello-world/index.cfm +0 -37
  146. data/tracks/coldfusion/exercises/isogram/.meta/HINTS.md +0 -0
  147. data/tracks/coldfusion/exercises/isogram/Isogram.cfc +0 -13
  148. data/tracks/coldfusion/exercises/isogram/IsogramTest.cfc +0 -55
  149. data/tracks/coldfusion/exercises/isogram/Solution.cfc +0 -23
  150. data/tracks/coldfusion/exercises/isogram/SolutionTest.cfc +0 -7
  151. data/tracks/coldfusion/exercises/isogram/TestRunner.cfc +0 -103
  152. data/tracks/coldfusion/exercises/isogram/box.json +0 -8
  153. data/tracks/coldfusion/exercises/isogram/index.cfm +0 -37
  154. data/tracks/coldfusion/exercises/largest-series-product/.meta/HINTS.md +0 -0
  155. data/tracks/coldfusion/exercises/largest-series-product/LargestSeriesProduct.cfc +0 -13
  156. data/tracks/coldfusion/exercises/largest-series-product/LargestSeriesProductTest.cfc +0 -75
  157. data/tracks/coldfusion/exercises/largest-series-product/Solution.cfc +0 -41
  158. data/tracks/coldfusion/exercises/largest-series-product/SolutionTest.cfc +0 -7
  159. data/tracks/coldfusion/exercises/largest-series-product/TestRunner.cfc +0 -103
  160. data/tracks/coldfusion/exercises/largest-series-product/box.json +0 -8
  161. data/tracks/coldfusion/exercises/largest-series-product/index.cfm +0 -37
  162. data/tracks/coldfusion/exercises/leap/Leap.cfc +0 -15
  163. data/tracks/coldfusion/exercises/leap/LeapTest.cfc +0 -39
  164. data/tracks/coldfusion/exercises/leap/README.md +0 -33
  165. data/tracks/coldfusion/exercises/leap/Solution.cfc +0 -19
  166. data/tracks/coldfusion/exercises/leap/SolutionTest.cfc +0 -7
  167. data/tracks/coldfusion/exercises/leap/TestRunner.cfc +0 -103
  168. data/tracks/coldfusion/exercises/leap/box.json +0 -8
  169. data/tracks/coldfusion/exercises/leap/index.cfm +0 -37
  170. data/tracks/coldfusion/exercises/luhn/.meta/HINTS.md +0 -0
  171. data/tracks/coldfusion/exercises/luhn/Luhn.cfc +0 -13
  172. data/tracks/coldfusion/exercises/luhn/LuhnTest.cfc +0 -67
  173. data/tracks/coldfusion/exercises/luhn/Solution.cfc +0 -38
  174. data/tracks/coldfusion/exercises/luhn/SolutionTest.cfc +0 -7
  175. data/tracks/coldfusion/exercises/luhn/TestRunner.cfc +0 -103
  176. data/tracks/coldfusion/exercises/luhn/box.json +0 -8
  177. data/tracks/coldfusion/exercises/luhn/index.cfm +0 -37
  178. data/tracks/coldfusion/exercises/nth-prime/.meta/HINTS.md +0 -0
  179. data/tracks/coldfusion/exercises/nth-prime/NthPrime.cfc +0 -13
  180. data/tracks/coldfusion/exercises/nth-prime/NthPrimeTest.cfc +0 -35
  181. data/tracks/coldfusion/exercises/nth-prime/Solution.cfc +0 -33
  182. data/tracks/coldfusion/exercises/nth-prime/SolutionTest.cfc +0 -7
  183. data/tracks/coldfusion/exercises/nth-prime/TestRunner.cfc +0 -103
  184. data/tracks/coldfusion/exercises/nth-prime/box.json +0 -8
  185. data/tracks/coldfusion/exercises/nth-prime/index.cfm +0 -37
  186. data/tracks/coldfusion/exercises/pangram/.meta/HINTS.md +0 -0
  187. data/tracks/coldfusion/exercises/pangram/Pangram.cfc +0 -13
  188. data/tracks/coldfusion/exercises/pangram/PangramTest.cfc +0 -55
  189. data/tracks/coldfusion/exercises/pangram/Solution.cfc +0 -21
  190. data/tracks/coldfusion/exercises/pangram/SolutionTest.cfc +0 -7
  191. data/tracks/coldfusion/exercises/pangram/TestRunner.cfc +0 -103
  192. data/tracks/coldfusion/exercises/pangram/box.json +0 -8
  193. data/tracks/coldfusion/exercises/pangram/index.cfm +0 -37
  194. data/tracks/coldfusion/exercises/pig-latin/.meta/HINTS.md +0 -0
  195. data/tracks/coldfusion/exercises/pig-latin/PigLatin.cfc +0 -13
  196. data/tracks/coldfusion/exercises/pig-latin/PigLatinTest.cfc +0 -115
  197. data/tracks/coldfusion/exercises/pig-latin/Solution.cfc +0 -30
  198. data/tracks/coldfusion/exercises/pig-latin/SolutionTest.cfc +0 -7
  199. data/tracks/coldfusion/exercises/pig-latin/TestRunner.cfc +0 -103
  200. data/tracks/coldfusion/exercises/pig-latin/box.json +0 -8
  201. data/tracks/coldfusion/exercises/pig-latin/index.cfm +0 -37
  202. data/tracks/coldfusion/exercises/raindrops/.meta/HINTS.md +0 -0
  203. data/tracks/coldfusion/exercises/raindrops/Raindrops.cfc +0 -13
  204. data/tracks/coldfusion/exercises/raindrops/RaindropsTest.cfc +0 -87
  205. data/tracks/coldfusion/exercises/raindrops/Solution.cfc +0 -33
  206. data/tracks/coldfusion/exercises/raindrops/SolutionTest.cfc +0 -7
  207. data/tracks/coldfusion/exercises/raindrops/TestRunner.cfc +0 -103
  208. data/tracks/coldfusion/exercises/raindrops/box.json +0 -8
  209. data/tracks/coldfusion/exercises/raindrops/index.cfm +0 -37
  210. data/tracks/coldfusion/exercises/rna-transcription/.meta/HINTS.md +0 -0
  211. data/tracks/coldfusion/exercises/rna-transcription/RnaTranscription.cfc +0 -13
  212. data/tracks/coldfusion/exercises/rna-transcription/RnaTranscriptionTest.cfc +0 -47
  213. data/tracks/coldfusion/exercises/rna-transcription/Solution.cfc +0 -35
  214. data/tracks/coldfusion/exercises/rna-transcription/SolutionTest.cfc +0 -7
  215. data/tracks/coldfusion/exercises/rna-transcription/TestRunner.cfc +0 -103
  216. data/tracks/coldfusion/exercises/rna-transcription/box.json +0 -8
  217. data/tracks/coldfusion/exercises/rna-transcription/index.cfm +0 -37
  218. data/tracks/coldfusion/exercises/saddle-points/.meta/HINTS.md +0 -0
  219. data/tracks/coldfusion/exercises/saddle-points/SaddlePoints.cfc +0 -13
  220. data/tracks/coldfusion/exercises/saddle-points/SaddlePointsTest.cfc +0 -35
  221. data/tracks/coldfusion/exercises/saddle-points/Solution.cfc +0 -59
  222. data/tracks/coldfusion/exercises/saddle-points/SolutionTest.cfc +0 -7
  223. data/tracks/coldfusion/exercises/saddle-points/TestRunner.cfc +0 -103
  224. data/tracks/coldfusion/exercises/saddle-points/box.json +0 -8
  225. data/tracks/coldfusion/exercises/saddle-points/index.cfm +0 -37
  226. data/tracks/coldfusion/exercises/scrabble-score/.meta/HINTS.md +0 -0
  227. data/tracks/coldfusion/exercises/scrabble-score/ScrabbleScore.cfc +0 -13
  228. data/tracks/coldfusion/exercises/scrabble-score/ScrabbleScoreTest.cfc +0 -59
  229. data/tracks/coldfusion/exercises/scrabble-score/Solution.cfc +0 -50
  230. data/tracks/coldfusion/exercises/scrabble-score/SolutionTest.cfc +0 -7
  231. data/tracks/coldfusion/exercises/scrabble-score/TestRunner.cfc +0 -103
  232. data/tracks/coldfusion/exercises/scrabble-score/box.json +0 -8
  233. data/tracks/coldfusion/exercises/scrabble-score/index.cfm +0 -37
  234. data/tracks/coldfusion/exercises/secret-handshake/.meta/HINTS.md +0 -0
  235. data/tracks/coldfusion/exercises/secret-handshake/SecretHandshake.cfc +0 -13
  236. data/tracks/coldfusion/exercises/secret-handshake/SecretHandshakeTest.cfc +0 -63
  237. data/tracks/coldfusion/exercises/secret-handshake/Solution.cfc +0 -31
  238. data/tracks/coldfusion/exercises/secret-handshake/SolutionTest.cfc +0 -7
  239. data/tracks/coldfusion/exercises/secret-handshake/TestRunner.cfc +0 -103
  240. data/tracks/coldfusion/exercises/secret-handshake/box.json +0 -8
  241. data/tracks/coldfusion/exercises/secret-handshake/index.cfm +0 -37
  242. data/tracks/coldfusion/exercises/space-age/.meta/HINTS.md +0 -0
  243. data/tracks/coldfusion/exercises/space-age/Solution.cfc +0 -28
  244. data/tracks/coldfusion/exercises/space-age/SolutionTest.cfc +0 -7
  245. data/tracks/coldfusion/exercises/space-age/SpaceAge.cfc +0 -13
  246. data/tracks/coldfusion/exercises/space-age/SpaceAgeTest.cfc +0 -47
  247. data/tracks/coldfusion/exercises/space-age/TestRunner.cfc +0 -103
  248. data/tracks/coldfusion/exercises/space-age/box.json +0 -8
  249. data/tracks/coldfusion/exercises/space-age/index.cfm +0 -37
  250. data/tracks/coldfusion/exercises/sum-of-multiples/.meta/HINTS.md +0 -0
  251. data/tracks/coldfusion/exercises/sum-of-multiples/Solution.cfc +0 -27
  252. data/tracks/coldfusion/exercises/sum-of-multiples/SolutionTest.cfc +0 -7
  253. data/tracks/coldfusion/exercises/sum-of-multiples/SumOfMultiples.cfc +0 -13
  254. data/tracks/coldfusion/exercises/sum-of-multiples/SumOfMultiplesTest.cfc +0 -63
  255. data/tracks/coldfusion/exercises/sum-of-multiples/TestRunner.cfc +0 -103
  256. data/tracks/coldfusion/exercises/sum-of-multiples/box.json +0 -8
  257. data/tracks/coldfusion/exercises/sum-of-multiples/index.cfm +0 -37
  258. data/tracks/coldfusion/exercises/triangle/.meta/HINTS.md +0 -0
  259. data/tracks/coldfusion/exercises/triangle/Solution.cfc +0 -53
  260. data/tracks/coldfusion/exercises/triangle/SolutionTest.cfc +0 -7
  261. data/tracks/coldfusion/exercises/triangle/TestRunner.cfc +0 -103
  262. data/tracks/coldfusion/exercises/triangle/Triangle.cfc +0 -18
  263. data/tracks/coldfusion/exercises/triangle/TriangleTest.cfc +0 -95
  264. data/tracks/coldfusion/exercises/triangle/box.json +0 -8
  265. data/tracks/coldfusion/exercises/triangle/index.cfm +0 -37
  266. data/tracks/coldfusion/exercises/word-count/.meta/HINTS.md +0 -0
  267. data/tracks/coldfusion/exercises/word-count/Solution.cfc +0 -22
  268. data/tracks/coldfusion/exercises/word-count/SolutionTest.cfc +0 -7
  269. data/tracks/coldfusion/exercises/word-count/TestRunner.cfc +0 -103
  270. data/tracks/coldfusion/exercises/word-count/WordCount.cfc +0 -13
  271. data/tracks/coldfusion/exercises/word-count/WordCountTest.cfc +0 -55
  272. data/tracks/coldfusion/exercises/word-count/box.json +0 -8
  273. data/tracks/coldfusion/exercises/word-count/index.cfm +0 -37
  274. data/tracks/coldfusion/img/icon.png +0 -0
  275. data/tracks/coldfusion/tasks/GenerateTests.cfc +0 -179
  276. data/tracks/coldfusion/tasks/ScaffoldExercise.cfc +0 -85
  277. data/tracks/coldfusion/tasks/TestAllSolutions.cfc +0 -24
  278. data/tracks/coldfusion/tasks/exercise_template/.meta/HINTS.md +0 -0
  279. data/tracks/coldfusion/tasks/exercise_template/@@name@@.cfc +0 -13
  280. data/tracks/coldfusion/tasks/exercise_template/@@name@@Test.cfc +0 -15
  281. data/tracks/coldfusion/tasks/exercise_template/Solution.cfc +0 -6
  282. data/tracks/coldfusion/tasks/exercise_template/SolutionTest.cfc +0 -7
  283. data/tracks/coldfusion/tasks/exercise_template/TestRunner.cfc +0 -103
  284. data/tracks/coldfusion/tasks/exercise_template/box.json +0 -8
  285. data/tracks/coldfusion/tasks/exercise_template/index.cfm +0 -37
  286. data/tracks/csharp/exercises/etl/ETLTest.cs +0 -51
  287. data/tracks/csharp/exercises/saddle-points/SaddlePointTest.cs +0 -68
  288. data/tracks/java/exercises/triangle/.meta/src/reference/java/TriangleKind.java +0 -5
  289. data/tracks/java/exercises/triangle/src/main/java/TriangleKind.java +0 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0214b3b6d688d73c6a1c977f15b470b9d2b6d4af
4
- data.tar.gz: 197fa90c855996ffbe2d6f1028002d30188e7305
3
+ metadata.gz: 047a29724bdbbe9e5f00496bb7cd3635a5eeccfe
4
+ data.tar.gz: 6972b2212d301aca8838180140e3f088866b9f48
5
5
  SHA512:
6
- metadata.gz: 699433c2c931da44c019a44a7179ace1057dbfdf3196258ec7cbcec31c7763c7e9c2b7ed38576efc4bc6d282257cd2c871eb8a227c98204b3c3625ffbaf971a6
7
- data.tar.gz: c71601428e95797353e643ae32faaf86ce949e463fae541675f9d0e5e9d713a38cbd35966c0eb66309a4eeb5e1fa2950175d244ceaaa325d4b0084482bee12d4
6
+ metadata.gz: 9bebb9b952d4391678489cfd54d3d41c2d026934e7d91f66e747d1f1adfe8489b5ef26b46bfc75e8cfcc74070460fd461f33521dc2f9f623b97c45ce337539d3
7
+ data.tar.gz: 82780d9cd2c56036ea73a7a7f1880c13522339d14a65486f5335aae6c585feccf5e4ae4c8b194be74117901a1f854db67ca70dd792fa41d7775c885f2cbc152f
data/.gitmodules CHANGED
@@ -13,9 +13,6 @@
13
13
  [submodule "tracks/coffeescript"]
14
14
  path = tracks/coffeescript
15
15
  url = https://github.com/exercism/coffeescript
16
- [submodule "tracks/coldfusion"]
17
- path = tracks/coldfusion
18
- url = https://github.com/exercism/coldfusion
19
16
  [submodule "tracks/coq"]
20
17
  path = tracks/coq
21
18
  url = https://github.com/exercism/coq
@@ -1,3 +1,3 @@
1
1
  module Trackler
2
- VERSION = "2.2.1.41"
2
+ VERSION = "2.2.1.42"
3
3
  end
@@ -1,5 +1,2 @@
1
1
  ---
2
2
  blurb: "Correctly determine change to be given using the least number of coins"
3
- source: "Software Craftsmanship - Kata-logue"
4
- source_url: "http://craftsmanship.sv.cmu.edu/exercises/coin-change-kata"
5
-
@@ -2,20 +2,20 @@
2
2
  #define ALLERGIES_H
3
3
 
4
4
  typedef enum {
5
- Allergen_Eggs = 0,
6
- Allergen_Peanuts,
7
- Allergen_Shellfish,
8
- Allergen_Strawberries,
9
- Allergen_Tomatoes,
10
- Allergen_Chocolate,
11
- Allergen_Pollen,
12
- Allergen_Cats,
13
- Allergen_Count
14
- } Allergen_t;
5
+ allergen_eggs = 0,
6
+ allergen_peanuts,
7
+ allergen_shellfish,
8
+ allergen_strawberries,
9
+ allergen_tomatoes,
10
+ allergen_chocolate,
11
+ allergen_pollen,
12
+ allergen_cats,
13
+ allergen_count
14
+ } allergen_t;
15
15
 
16
16
  typedef struct {
17
17
  int count;
18
- Allergen_t *allergens;
19
- } Allergen_List_t;
18
+ allergen_t *allergens;
19
+ } allergen_list_t;
20
20
 
21
21
  #endif
@@ -12,17 +12,17 @@ static const unsigned int scores[] = {
12
12
  128
13
13
  };
14
14
 
15
- bool is_allergic_to(Allergen_t allergen, unsigned int score)
15
+ bool is_allergic_to(allergen_t allergen, unsigned int score)
16
16
  {
17
17
  return ((score & scores[allergen]) == scores[allergen]);
18
18
  }
19
19
 
20
- void get_allergens(unsigned int score, Allergen_List_t * list)
20
+ void get_allergens(unsigned int score, allergen_list_t * list)
21
21
  {
22
- list->allergens = calloc(Allergen_Count, sizeof(Allergen_t));
22
+ list->allergens = calloc(allergen_count, sizeof(allergen_t));
23
23
  list->count = 0;
24
24
 
25
- for (Allergen_t allergen = 0; allergen < Allergen_Count; allergen++) {
25
+ for (allergen_t allergen = 0; allergen < allergen_count; allergen++) {
26
26
  if (is_allergic_to(allergen, score)) {
27
27
  score -= scores[allergen];
28
28
  list->allergens[list->count] = allergen;
@@ -4,23 +4,23 @@
4
4
  #include <stdbool.h>
5
5
 
6
6
  typedef enum {
7
- Allergen_Eggs = 0,
8
- Allergen_Peanuts,
9
- Allergen_Shellfish,
10
- Allergen_Strawberries,
11
- Allergen_Tomatoes,
12
- Allergen_Chocolate,
13
- Allergen_Pollen,
14
- Allergen_Cats,
15
- Allergen_Count
16
- } Allergen_t;
7
+ allergen_eggs = 0,
8
+ allergen_peanuts,
9
+ allergen_shellfish,
10
+ allergen_strawberries,
11
+ allergen_tomatoes,
12
+ allergen_chocolate,
13
+ allergen_pollen,
14
+ allergen_cats,
15
+ allergen_count
16
+ } allergen_t;
17
17
 
18
18
  typedef struct {
19
19
  int count;
20
- Allergen_t *allergens;
21
- } Allergen_List_t;
20
+ allergen_t *allergens;
21
+ } allergen_list_t;
22
22
 
23
- bool is_allergic_to(Allergen_t allergen, unsigned int score);
24
- void get_allergens(unsigned int score, Allergen_List_t * list);
23
+ bool is_allergic_to(allergen_t allergen, unsigned int score);
24
+ void get_allergens(unsigned int score, allergen_list_t * list);
25
25
 
26
26
  #endif
@@ -2,12 +2,12 @@
2
2
  #include "../src/allergies.h"
3
3
  #include <stdlib.h>
4
4
 
5
- void test_list_count_is(int count, Allergen_List_t * list)
5
+ void test_list_count_is(int count, allergen_list_t * list)
6
6
  {
7
7
  TEST_ASSERT_EQUAL(count, list->count);
8
8
  }
9
9
 
10
- void test_list_contains(Allergen_t allergen, Allergen_List_t * list)
10
+ void test_list_contains(allergen_t allergen, allergen_list_t * list)
11
11
  {
12
12
  bool allergen_found = false;
13
13
 
@@ -25,31 +25,31 @@ void test_no_allergies_means_not_allergic(void)
25
25
  {
26
26
  int score = 0;
27
27
 
28
- TEST_ASSERT_FALSE(is_allergic_to(Allergen_Peanuts, score));
29
- TEST_ASSERT_FALSE(is_allergic_to(Allergen_Cats, score));
30
- TEST_ASSERT_FALSE(is_allergic_to(Allergen_Strawberries, score));
28
+ TEST_ASSERT_FALSE(is_allergic_to(allergen_peanuts, score));
29
+ TEST_ASSERT_FALSE(is_allergic_to(allergen_cats, score));
30
+ TEST_ASSERT_FALSE(is_allergic_to(allergen_strawberries, score));
31
31
  }
32
32
 
33
33
  void test_is_allergic_to_eggs(void)
34
34
  {
35
35
  int score = 1;
36
36
 
37
- TEST_ASSERT_TRUE(is_allergic_to(Allergen_Eggs, score));
37
+ TEST_ASSERT_TRUE(is_allergic_to(allergen_eggs, score));
38
38
  }
39
39
 
40
40
  void test_is_allergic_to_eggs_in_addition_to_other_stuff(void)
41
41
  {
42
42
  int score = 5;
43
43
 
44
- TEST_ASSERT_TRUE(is_allergic_to(Allergen_Eggs, score));
45
- TEST_ASSERT_TRUE(is_allergic_to(Allergen_Shellfish, score));
46
- TEST_ASSERT_FALSE(is_allergic_to(Allergen_Strawberries, score));
44
+ TEST_ASSERT_TRUE(is_allergic_to(allergen_eggs, score));
45
+ TEST_ASSERT_TRUE(is_allergic_to(allergen_shellfish, score));
46
+ TEST_ASSERT_FALSE(is_allergic_to(allergen_strawberries, score));
47
47
  }
48
48
 
49
49
  void test_no_allergies_at_all(void)
50
50
  {
51
51
  int score = 0;
52
- Allergen_List_t list;
52
+ allergen_list_t list;
53
53
 
54
54
  get_allergens(score, &list);
55
55
 
@@ -61,12 +61,12 @@ void test_no_allergies_at_all(void)
61
61
  void test_allergic_to_just_eggs(void)
62
62
  {
63
63
  int score = 1;
64
- Allergen_List_t list;
64
+ allergen_list_t list;
65
65
 
66
66
  get_allergens(score, &list);
67
67
 
68
68
  test_list_count_is(1, &list);
69
- test_list_contains(Allergen_Eggs, &list);
69
+ test_list_contains(allergen_eggs, &list);
70
70
 
71
71
  free(list.allergens);
72
72
  }
@@ -74,12 +74,12 @@ void test_allergic_to_just_eggs(void)
74
74
  void test_allergic_to_just_peanuts(void)
75
75
  {
76
76
  int score = 2;
77
- Allergen_List_t list;
77
+ allergen_list_t list;
78
78
 
79
79
  get_allergens(score, &list);
80
80
 
81
81
  test_list_count_is(1, &list);
82
- test_list_contains(Allergen_Peanuts, &list);
82
+ test_list_contains(allergen_peanuts, &list);
83
83
 
84
84
  free(list.allergens);
85
85
  }
@@ -87,12 +87,12 @@ void test_allergic_to_just_peanuts(void)
87
87
  void test_allergic_to_just_strawberries(void)
88
88
  {
89
89
  int score = 8;
90
- Allergen_List_t list;
90
+ allergen_list_t list;
91
91
 
92
92
  get_allergens(score, &list);
93
93
 
94
94
  test_list_count_is(1, &list);
95
- test_list_contains(Allergen_Strawberries, &list);
95
+ test_list_contains(allergen_strawberries, &list);
96
96
 
97
97
  free(list.allergens);
98
98
  }
@@ -100,13 +100,13 @@ void test_allergic_to_just_strawberries(void)
100
100
  void test_allergic_to_eggs_and_peanuts(void)
101
101
  {
102
102
  int score = 3;
103
- Allergen_List_t list;
103
+ allergen_list_t list;
104
104
 
105
105
  get_allergens(score, &list);
106
106
 
107
107
  test_list_count_is(2, &list);
108
- test_list_contains(Allergen_Eggs, &list);
109
- test_list_contains(Allergen_Peanuts, &list);
108
+ test_list_contains(allergen_eggs, &list);
109
+ test_list_contains(allergen_peanuts, &list);
110
110
 
111
111
  free(list.allergens);
112
112
  }
@@ -114,13 +114,13 @@ void test_allergic_to_eggs_and_peanuts(void)
114
114
  void test_allergic_to_more_than_eggs_but_not_peanuts(void)
115
115
  {
116
116
  int score = 5;
117
- Allergen_List_t list;
117
+ allergen_list_t list;
118
118
 
119
119
  get_allergens(score, &list);
120
120
 
121
121
  test_list_count_is(2, &list);
122
- test_list_contains(Allergen_Eggs, &list);
123
- test_list_contains(Allergen_Shellfish, &list);
122
+ test_list_contains(allergen_eggs, &list);
123
+ test_list_contains(allergen_shellfish, &list);
124
124
 
125
125
  free(list.allergens);
126
126
  }
@@ -128,16 +128,16 @@ void test_allergic_to_more_than_eggs_but_not_peanuts(void)
128
128
  void test_allergic_to_lots_of_stuff(void)
129
129
  {
130
130
  int score = 248;
131
- Allergen_List_t list;
131
+ allergen_list_t list;
132
132
 
133
133
  get_allergens(score, &list);
134
134
 
135
135
  test_list_count_is(5, &list);
136
- test_list_contains(Allergen_Strawberries, &list);
137
- test_list_contains(Allergen_Tomatoes, &list);
138
- test_list_contains(Allergen_Chocolate, &list);
139
- test_list_contains(Allergen_Pollen, &list);
140
- test_list_contains(Allergen_Cats, &list);
136
+ test_list_contains(allergen_strawberries, &list);
137
+ test_list_contains(allergen_tomatoes, &list);
138
+ test_list_contains(allergen_chocolate, &list);
139
+ test_list_contains(allergen_pollen, &list);
140
+ test_list_contains(allergen_cats, &list);
141
141
 
142
142
  free(list.allergens);
143
143
  }
@@ -145,19 +145,19 @@ void test_allergic_to_lots_of_stuff(void)
145
145
  void test_allergic_to_everything(void)
146
146
  {
147
147
  int score = 255;
148
- Allergen_List_t list;
148
+ allergen_list_t list;
149
149
 
150
150
  get_allergens(score, &list);
151
151
 
152
152
  test_list_count_is(8, &list);
153
- test_list_contains(Allergen_Eggs, &list);
154
- test_list_contains(Allergen_Peanuts, &list);
155
- test_list_contains(Allergen_Shellfish, &list);
156
- test_list_contains(Allergen_Strawberries, &list);
157
- test_list_contains(Allergen_Tomatoes, &list);
158
- test_list_contains(Allergen_Chocolate, &list);
159
- test_list_contains(Allergen_Pollen, &list);
160
- test_list_contains(Allergen_Cats, &list);
153
+ test_list_contains(allergen_eggs, &list);
154
+ test_list_contains(allergen_peanuts, &list);
155
+ test_list_contains(allergen_shellfish, &list);
156
+ test_list_contains(allergen_strawberries, &list);
157
+ test_list_contains(allergen_tomatoes, &list);
158
+ test_list_contains(allergen_chocolate, &list);
159
+ test_list_contains(allergen_pollen, &list);
160
+ test_list_contains(allergen_cats, &list);
161
161
 
162
162
  free(list.allergens);
163
163
  }
@@ -165,18 +165,18 @@ void test_allergic_to_everything(void)
165
165
  void test_ignore_non_allergen_score_parts(void)
166
166
  {
167
167
  int score = 509;
168
- Allergen_List_t list;
168
+ allergen_list_t list;
169
169
 
170
170
  get_allergens(score, &list);
171
171
 
172
172
  test_list_count_is(7, &list);
173
- test_list_contains(Allergen_Eggs, &list);
174
- test_list_contains(Allergen_Shellfish, &list);
175
- test_list_contains(Allergen_Strawberries, &list);
176
- test_list_contains(Allergen_Tomatoes, &list);
177
- test_list_contains(Allergen_Chocolate, &list);
178
- test_list_contains(Allergen_Pollen, &list);
179
- test_list_contains(Allergen_Cats, &list);
173
+ test_list_contains(allergen_eggs, &list);
174
+ test_list_contains(allergen_shellfish, &list);
175
+ test_list_contains(allergen_strawberries, &list);
176
+ test_list_contains(allergen_tomatoes, &list);
177
+ test_list_contains(allergen_chocolate, &list);
178
+ test_list_contains(allergen_pollen, &list);
179
+ test_list_contains(allergen_cats, &list);
180
180
 
181
181
  free(list.allergens);
182
182
  }
@@ -1,223 +1,169 @@
1
1
  {
2
- "language":"ColdFusion",
3
- "blurb":"ColdFusion (CFML) is an open source and commercial (JIT) compiled dynamic and loosely typed JVM scripting language that embodies classic OO, and functional programming, making it easy to learn, fun to use. CFML brings the power and scalability of the J2EE ecosystem but without the boilerplate of Java.",
4
- "active":true,
5
- "test_pattern":"Test.cfc",
6
- "solution_pattern":"Solution.cfc",
7
- "ignore_pattern":"Solution",
8
- "foregone":[
9
-
10
- ],
11
- "exercises":[
2
+ "active": true,
3
+ "blurb": "CFML (ColdFusion Markup Language) is an open source and commercial (JIT) compiled dynamic and loosely typed JVM scripting language that embodies classic OO, and functional programming, making it easy to learn, fun to use. CFML brings the power and scalability of the J2EE ecosystem but without the boilerplate of Java.",
4
+ "exercises": [
12
5
  {
13
- "uuid":"ab04a390-0969-4a17-8081-c852b23ed88c",
14
- "difficulty":1,
15
- "slug":"hello-world",
16
- "topics":[
17
-
18
- ]
6
+ "difficulty": 1,
7
+ "slug": "hello-world",
8
+ "topics": null,
9
+ "uuid": "ab04a390-0969-4a17-8081-c852b23ed88c"
19
10
  },
20
11
  {
21
- "uuid":"03a98e5b-03b7-45e5-a580-611ef5dab4e5",
22
- "slug":"leap",
23
- "core":false,
24
- "unlocked_by":null,
25
- "difficulty":1,
26
- "topics":[
27
-
28
- ]
12
+ "core": false,
13
+ "difficulty": 1,
14
+ "slug": "leap",
15
+ "topics": null,
16
+ "unlocked_by": null,
17
+ "uuid": "03a98e5b-03b7-45e5-a580-611ef5dab4e5"
29
18
  },
30
- {
31
- "difficulty":1,
32
- "slug":"raindrops",
33
- "uuid":"9273C0A7-CB7E-4F3F-8993-F1621CE1F700",
34
- "topics":[
35
-
36
- ]
19
+ {
20
+ "difficulty": 1,
21
+ "slug": "raindrops",
22
+ "topics": null,
23
+ "uuid": "9273C0A7-CB7E-4F3F-8993-F1621CE1F700"
37
24
  },
38
- {
39
- "difficulty":1,
40
- "slug":"scrabble-score",
41
- "uuid":"1065F8DF-E6C6-4473-A633-4FA4B49A5314",
42
- "topics":[
43
-
44
- ]
25
+ {
26
+ "difficulty": 1,
27
+ "slug": "scrabble-score",
28
+ "topics": null,
29
+ "uuid": "1065F8DF-E6C6-4473-A633-4FA4B49A5314"
45
30
  },
46
- {
47
- "difficulty":1,
48
- "slug":"difference-of-squares",
49
- "uuid":"4E91AD44-8F3D-40DC-899E-253C91B134F6",
50
- "topics":[
51
-
52
- ]
31
+ {
32
+ "difficulty": 1,
33
+ "slug": "difference-of-squares",
34
+ "topics": null,
35
+ "uuid": "4E91AD44-8F3D-40DC-899E-253C91B134F6"
53
36
  },
54
- {
55
- "difficulty":1,
56
- "slug":"secret-handshake",
57
- "uuid":"0AC79782-B370-4954-8455-6300A734E1B8",
58
- "topics":[
59
-
60
- ]
37
+ {
38
+ "difficulty": 1,
39
+ "slug": "secret-handshake",
40
+ "topics": null,
41
+ "uuid": "0AC79782-B370-4954-8455-6300A734E1B8"
61
42
  },
62
- {
63
- "difficulty":1,
64
- "slug":"space-age",
65
- "uuid":"0B14F23A-DAD4-4965-8ABD-8A107DFD6C00",
66
- "topics":[
67
-
68
- ]
43
+ {
44
+ "difficulty": 1,
45
+ "slug": "space-age",
46
+ "topics": null,
47
+ "uuid": "0B14F23A-DAD4-4965-8ABD-8A107DFD6C00"
69
48
  },
70
- {
71
- "difficulty":1,
72
- "slug":"acronym",
73
- "uuid":"9894F2F7-2DBE-4001-885B-FD2C029C6731",
74
- "topics":[
75
-
76
- ]
49
+ {
50
+ "difficulty": 1,
51
+ "slug": "acronym",
52
+ "topics": null,
53
+ "uuid": "9894F2F7-2DBE-4001-885B-FD2C029C6731"
77
54
  },
78
- {
79
- "difficulty":1,
80
- "slug":"rna-transcription",
81
- "uuid":"11C48AFF-4A54-4B3C-AF5E-53048D4BA98B",
82
- "topics":[
83
-
84
- ]
55
+ {
56
+ "difficulty": 1,
57
+ "slug": "rna-transcription",
58
+ "topics": null,
59
+ "uuid": "11C48AFF-4A54-4B3C-AF5E-53048D4BA98B"
85
60
  },
86
- {
87
- "difficulty":1,
88
- "slug":"pangram",
89
- "uuid":"113A2FF7-E72E-49DD-A2CF-0EB25894707D",
90
- "topics":[
91
-
92
- ]
61
+ {
62
+ "difficulty": 1,
63
+ "slug": "pangram",
64
+ "topics": null,
65
+ "uuid": "113A2FF7-E72E-49DD-A2CF-0EB25894707D"
93
66
  },
94
- {
95
- "difficulty":1,
96
- "slug":"hamming",
97
- "uuid":"4063A554-424C-4173-81EE-FEAC7CC51E8A",
98
- "topics":[
99
-
100
- ]
67
+ {
68
+ "difficulty": 1,
69
+ "slug": "hamming",
70
+ "topics": null,
71
+ "uuid": "4063A554-424C-4173-81EE-FEAC7CC51E8A"
101
72
  },
102
- {
103
- "difficulty":1,
104
- "slug":"gigasecond",
105
- "uuid":"00B82E7F-804C-4401-BB7F-0565DEA02567",
106
- "topics":[
107
-
108
- ]
73
+ {
74
+ "difficulty": 1,
75
+ "slug": "gigasecond",
76
+ "topics": null,
77
+ "uuid": "00B82E7F-804C-4401-BB7F-0565DEA02567"
109
78
  },
110
- {
111
- "difficulty":1,
112
- "slug":"sum-of-multiples",
113
- "uuid":"C6F38ACB-A6BD-41EE-A2F8-A9680B3F61D2",
114
- "topics":[
115
-
116
- ]
79
+ {
80
+ "difficulty": 1,
81
+ "slug": "sum-of-multiples",
82
+ "topics": null,
83
+ "uuid": "C6F38ACB-A6BD-41EE-A2F8-A9680B3F61D2"
117
84
  },
118
85
  {
119
- "difficulty":1,
120
- "slug":"luhn",
121
- "uuid":"685ADB7B-1DC9-4409-993D-51034DF6F744",
122
- "topics":[
123
-
124
- ]
125
- },
86
+ "difficulty": 1,
87
+ "slug": "luhn",
88
+ "topics": null,
89
+ "uuid": "685ADB7B-1DC9-4409-993D-51034DF6F744"
90
+ },
126
91
  {
127
- "difficulty":1,
128
- "slug":"triangle",
129
- "uuid":"8D0FA71A-3314-432E-BF1F-E6A5F823FC36",
130
- "topics":[
131
-
132
- ]
133
- },
92
+ "difficulty": 1,
93
+ "slug": "triangle",
94
+ "topics": null,
95
+ "uuid": "8D0FA71A-3314-432E-BF1F-E6A5F823FC36"
96
+ },
134
97
  {
135
- "difficulty":1,
136
- "slug":"largest-series-product",
137
- "uuid":"A35C9BE1-F26A-40C8-8C05-99C33C552E6F",
138
- "topics":[
139
-
140
- ]
141
- },
98
+ "difficulty": 1,
99
+ "slug": "largest-series-product",
100
+ "topics": null,
101
+ "uuid": "A35C9BE1-F26A-40C8-8C05-99C33C552E6F"
102
+ },
142
103
  {
143
- "difficulty":1,
144
- "slug":"grains",
145
- "uuid":"E25686EE-B888-4533-86C2-5A5D96F5270E",
146
- "topics":[
147
-
148
- ]
149
- },
104
+ "difficulty": 1,
105
+ "slug": "grains",
106
+ "topics": null,
107
+ "uuid": "E25686EE-B888-4533-86C2-5A5D96F5270E"
108
+ },
150
109
  {
151
- "difficulty":1,
152
- "slug":"atbash-cipher",
153
- "uuid":"C35391BD-900F-4756-8DFE-A96EA04250F8",
154
- "topics":[
155
-
156
- ]
157
- },
110
+ "difficulty": 1,
111
+ "slug": "atbash-cipher",
112
+ "topics": null,
113
+ "uuid": "C35391BD-900F-4756-8DFE-A96EA04250F8"
114
+ },
158
115
  {
159
- "difficulty":1,
160
- "slug":"nth-prime",
161
- "uuid":"15151E41-195C-40DD-B296-C2C19B38CAEA",
162
- "topics":[
163
-
164
- ]
165
- },
116
+ "difficulty": 1,
117
+ "slug": "nth-prime",
118
+ "topics": null,
119
+ "uuid": "15151E41-195C-40DD-B296-C2C19B38CAEA"
120
+ },
166
121
  {
167
- "difficulty":1,
168
- "slug":"pig-latin",
169
- "uuid":"3FDDA0E3-AE90-4834-B6DC-A5E367A5A029",
170
- "topics":[
171
-
172
- ]
173
- },
122
+ "difficulty": 1,
123
+ "slug": "pig-latin",
124
+ "topics": null,
125
+ "uuid": "3FDDA0E3-AE90-4834-B6DC-A5E367A5A029"
126
+ },
174
127
  {
175
- "difficulty":1,
176
- "slug":"flatten-array",
177
- "uuid":"B0E72A09-49E2-4973-BFF4-88C678F4BE55",
178
- "topics":[
179
-
180
- ]
181
- },
128
+ "difficulty": 1,
129
+ "slug": "flatten-array",
130
+ "topics": null,
131
+ "uuid": "B0E72A09-49E2-4973-BFF4-88C678F4BE55"
132
+ },
182
133
  {
183
- "difficulty":1,
184
- "slug":"saddle-points",
185
- "uuid":"063C4BB9-3280-4C69-B164-237732AE00EF",
186
- "topics":[
187
-
188
- ]
189
- },
134
+ "difficulty": 1,
135
+ "slug": "saddle-points",
136
+ "topics": null,
137
+ "uuid": "063C4BB9-3280-4C69-B164-237732AE00EF"
138
+ },
190
139
  {
191
- "difficulty":1,
192
- "slug":"diamond",
193
- "uuid":"DECA4C79-DA5D-43A8-90B8-3A5BE73EAFF5",
194
- "topics":[
195
-
196
- ]
197
- },
140
+ "difficulty": 1,
141
+ "slug": "diamond",
142
+ "topics": null,
143
+ "uuid": "DECA4C79-DA5D-43A8-90B8-3A5BE73EAFF5"
144
+ },
198
145
  {
199
- "difficulty":1,
200
- "slug":"isogram",
201
- "uuid":"FC8922A3-E29D-451D-9947-A2781C0FF787",
202
- "topics":[
203
-
204
- ]
205
- },
146
+ "difficulty": 1,
147
+ "slug": "isogram",
148
+ "topics": null,
149
+ "uuid": "FC8922A3-E29D-451D-9947-A2781C0FF787"
150
+ },
206
151
  {
207
- "difficulty":1,
208
- "slug":"bob",
209
- "uuid":"12BBECF4-93EB-40F2-AC13-8CF28B550F0A",
210
- "topics":[
211
-
212
- ]
213
- },
152
+ "difficulty": 1,
153
+ "slug": "bob",
154
+ "topics": null,
155
+ "uuid": "12BBECF4-93EB-40F2-AC13-8CF28B550F0A"
156
+ },
214
157
  {
215
- "difficulty":1,
216
- "slug":"word-count",
217
- "uuid":"C61E97BE-6C66-4F1F-87ED-D21C4ED2A8E2",
218
- "topics":[
219
-
220
- ]
158
+ "difficulty": 1,
159
+ "slug": "word-count",
160
+ "topics": null,
161
+ "uuid": "C61E97BE-6C66-4F1F-87ED-D21C4ED2A8E2"
221
162
  }
222
- ]
223
- }
163
+ ],
164
+ "foregone": [],
165
+ "ignore_pattern": "Solution",
166
+ "language": "CFML",
167
+ "solution_pattern": "Solution.cfc",
168
+ "test_pattern": "Test.cfc"
169
+ }