trackler 2.2.0.2 → 2.2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/fixtures/deprecation-fixtures/tracks/repo-nope/config.json +2 -0
- data/fixtures/deprecation-fixtures/tracks/repo-yepp/config.json +3 -0
- data/lib/trackler/track.rb +1 -1
- data/lib/trackler/version.rb +1 -1
- data/tracks/csharp/config/exercise_readme.go.tmpl +16 -0
- data/tracks/csharp/exercises/accumulate/README.md +44 -0
- data/tracks/csharp/exercises/acronym/README.md +21 -0
- data/tracks/csharp/exercises/all-your-base/README.md +41 -0
- data/tracks/csharp/exercises/allergies/README.md +46 -0
- data/tracks/csharp/exercises/alphametics/README.md +48 -0
- data/tracks/csharp/exercises/anagram/README.md +19 -0
- data/tracks/csharp/exercises/atbash-cipher/README.md +40 -0
- data/tracks/csharp/exercises/bank-account/README.md +41 -0
- data/tracks/csharp/exercises/beer-song/README.md +336 -0
- data/tracks/csharp/exercises/binary-search-tree/README.md +66 -0
- data/tracks/csharp/exercises/binary-search/README.md +47 -0
- data/tracks/csharp/exercises/bob/README.md +24 -0
- data/tracks/csharp/exercises/book-store/README.md +80 -0
- data/tracks/csharp/exercises/bowling/README.md +59 -0
- data/tracks/csharp/exercises/bracket-push/README.md +16 -0
- data/tracks/csharp/exercises/change/README.md +29 -0
- data/tracks/csharp/exercises/circular-buffer/README.md +56 -0
- data/tracks/csharp/exercises/clock/README.md +25 -0
- data/tracks/csharp/exercises/connect/README.md +40 -0
- data/tracks/csharp/exercises/crypto-square/README.md +80 -0
- data/tracks/csharp/exercises/custom-set/README.md +23 -0
- data/tracks/csharp/exercises/diamond/README.md +75 -0
- data/tracks/csharp/exercises/difference-of-squares/README.md +30 -0
- data/tracks/csharp/exercises/diffie-hellman/README.md +55 -0
- data/tracks/csharp/exercises/dominoes/README.md +24 -0
- data/tracks/csharp/exercises/dot-dsl/README.md +37 -0
- data/tracks/csharp/exercises/error-handling/README.md +19 -0
- data/tracks/csharp/exercises/etl/README.md +57 -0
- data/tracks/csharp/exercises/flatten-array/README.md +24 -0
- data/tracks/csharp/exercises/food-chain/README.md +80 -0
- data/tracks/csharp/exercises/forth/README.md +39 -0
- data/tracks/csharp/exercises/gigasecond/README.md +17 -0
- data/tracks/csharp/exercises/go-counting/README.md +43 -0
- data/tracks/csharp/exercises/grade-school/README.md +48 -0
- data/tracks/csharp/exercises/grains/README.md +40 -0
- data/tracks/csharp/exercises/grep/README.md +77 -0
- data/tracks/csharp/exercises/hamming/README.md +48 -0
- data/tracks/csharp/exercises/hangman/README.md +32 -0
- data/tracks/csharp/exercises/hello-world/README.md +27 -0
- data/tracks/csharp/exercises/house/README.md +123 -0
- data/tracks/csharp/exercises/isogram/README.md +25 -0
- data/tracks/csharp/exercises/kindergarten-garden/README.md +72 -0
- data/tracks/csharp/exercises/largest-series-product/README.md +26 -0
- data/tracks/csharp/exercises/leap/README.md +39 -0
- data/tracks/csharp/exercises/ledger/README.md +24 -0
- data/tracks/csharp/exercises/linked-list/README.md +40 -0
- data/tracks/csharp/exercises/list-ops/README.md +19 -0
- data/tracks/csharp/exercises/luhn/README.md +77 -0
- data/tracks/csharp/exercises/markdown/README.md +28 -0
- data/tracks/csharp/exercises/matrix/README.md +51 -0
- data/tracks/csharp/exercises/meetup/README.md +36 -0
- data/tracks/csharp/exercises/minesweeper/README.md +36 -0
- data/tracks/csharp/exercises/nth-prime/README.md +29 -0
- data/tracks/csharp/exercises/nucleotide-count/README.md +43 -0
- data/tracks/csharp/exercises/ocr-numbers/README.md +91 -0
- data/tracks/csharp/exercises/palindrome-products/README.md +51 -0
- data/tracks/csharp/exercises/pangram/README.md +21 -0
- data/tracks/csharp/exercises/parallel-letter-frequency/README.md +17 -0
- data/tracks/csharp/exercises/pascals-triangle/README.md +27 -0
- data/tracks/csharp/exercises/perfect-numbers/README.md +30 -0
- data/tracks/csharp/exercises/phone-number/README.md +40 -0
- data/tracks/csharp/exercises/pig-latin/README.md +30 -0
- data/tracks/csharp/exercises/poker/README.md +18 -0
- data/tracks/csharp/exercises/pov/README.md +52 -0
- data/tracks/csharp/exercises/prime-factors/README.md +42 -0
- data/tracks/csharp/exercises/protein-translation/README.md +55 -0
- data/tracks/csharp/exercises/proverb/README.md +28 -0
- data/tracks/csharp/exercises/pythagorean-triplet/README.md +30 -0
- data/tracks/csharp/exercises/queen-attack/README.md +39 -0
- data/tracks/csharp/exercises/rail-fence-cipher/README.md +66 -0
- data/tracks/csharp/exercises/raindrops/README.md +30 -0
- data/tracks/csharp/exercises/react/README.md +29 -0
- data/tracks/csharp/exercises/rectangles/README.md +73 -0
- data/tracks/csharp/exercises/rna-transcription/README.md +31 -0
- data/tracks/csharp/exercises/robot-name/README.md +28 -0
- data/tracks/csharp/exercises/robot-simulator/README.md +40 -0
- data/tracks/csharp/exercises/roman-numerals/README.md +59 -0
- data/tracks/csharp/exercises/rotational-cipher/README.md +42 -0
- data/tracks/csharp/exercises/run-length-encoding/README.md +36 -0
- data/tracks/csharp/exercises/saddle-points/README.md +44 -0
- data/tracks/csharp/exercises/say/README.md +75 -0
- data/tracks/csharp/exercises/scale-generator/README.md +66 -0
- data/tracks/csharp/exercises/scrabble-score/README.md +50 -0
- data/tracks/csharp/exercises/secret-handshake/README.md +41 -0
- data/tracks/csharp/exercises/series/README.md +33 -0
- data/tracks/csharp/exercises/sgf-parsing/README.md +78 -0
- data/tracks/csharp/exercises/sieve/README.md +40 -0
- data/tracks/csharp/exercises/simple-cipher/README.md +96 -0
- data/tracks/csharp/exercises/simple-linked-list/README.md +38 -0
- data/tracks/csharp/exercises/space-age/README.md +30 -0
- data/tracks/csharp/exercises/strain/README.md +46 -0
- data/tracks/csharp/exercises/sublist/README.md +32 -0
- data/tracks/csharp/exercises/sum-of-multiples/README.md +28 -0
- data/tracks/csharp/exercises/tournament/README.md +74 -0
- data/tracks/csharp/exercises/transpose/README.md +71 -0
- data/tracks/csharp/exercises/tree-building/README.md +36 -0
- data/tracks/csharp/exercises/triangle/README.md +32 -0
- data/tracks/csharp/exercises/twelve-days/README.md +45 -0
- data/tracks/csharp/exercises/two-bucket/README.md +42 -0
- data/tracks/csharp/exercises/variable-length-quantity/README.md +50 -0
- data/tracks/csharp/exercises/word-count/README.md +25 -0
- data/tracks/csharp/exercises/word-search/README.md +43 -0
- data/tracks/csharp/exercises/wordy/README.md +73 -0
- data/tracks/csharp/exercises/zebra-puzzle/README.md +43 -0
- data/tracks/csharp/exercises/zipper/README.md +41 -0
- data/tracks/dart/config/exercise_readme.go.tmpl +16 -0
- data/tracks/dart/exercises/bob/README.md +18 -0
- data/tracks/dart/exercises/difference-of-squares/README.md +19 -0
- data/tracks/dart/exercises/gigasecond/README.md +11 -0
- data/tracks/dart/exercises/hamming/README.md +42 -0
- data/tracks/dart/exercises/hello-world/README.md +21 -0
- data/tracks/dart/exercises/leap/README.md +33 -0
- data/tracks/dart/exercises/rna-transcription/README.md +25 -0
- data/tracks/delphi/config.json +25 -32
- data/tracks/elixir/config.json +255 -3
- data/tracks/elixir/config/exercise_readme.go.tmpl +16 -0
- data/tracks/elixir/exercises/accumulate/README.md +72 -0
- data/tracks/elixir/exercises/acronym/README.md +52 -0
- data/tracks/elixir/exercises/all-your-base/README.md +72 -0
- data/tracks/elixir/exercises/allergies/README.md +74 -0
- data/tracks/elixir/exercises/anagram/README.md +50 -0
- data/tracks/elixir/exercises/atbash-cipher/README.md +71 -0
- data/tracks/elixir/exercises/bank-account/README.md +67 -0
- data/tracks/elixir/exercises/beer-song/README.md +364 -0
- data/tracks/elixir/exercises/binary-search/README.md +78 -0
- data/tracks/elixir/exercises/binary/README.md +72 -0
- data/tracks/elixir/exercises/bob/README.md +55 -0
- data/tracks/elixir/exercises/bowling/README.md +90 -0
- data/tracks/elixir/exercises/bowling/bowling_test.exs +91 -18
- data/tracks/elixir/exercises/bowling/example.exs +4 -4
- data/tracks/elixir/exercises/bracket-push/README.md +47 -0
- data/tracks/elixir/exercises/change/README.md +60 -0
- data/tracks/elixir/exercises/clock/README.md +50 -0
- data/tracks/elixir/exercises/collatz-conjecture/README.md +70 -0
- data/tracks/elixir/exercises/connect/README.md +71 -0
- data/tracks/elixir/exercises/crypto-square/README.md +111 -0
- data/tracks/elixir/exercises/custom-set/README.md +48 -0
- data/tracks/elixir/exercises/diamond/README.md +96 -0
- data/tracks/elixir/exercises/difference-of-squares/README.md +56 -0
- data/tracks/elixir/exercises/diffie-hellman/README.md +93 -0
- data/tracks/elixir/exercises/dominoes/README.md +55 -0
- data/tracks/elixir/exercises/dot-dsl/README.md +65 -0
- data/tracks/elixir/exercises/etl/README.md +88 -0
- data/tracks/elixir/exercises/flatten-array/README.md +55 -0
- data/tracks/elixir/exercises/forth/README.md +66 -0
- data/tracks/elixir/exercises/gigasecond/README.md +48 -0
- data/tracks/elixir/exercises/grade-school/README.md +79 -0
- data/tracks/elixir/exercises/grains/README.md +71 -0
- data/tracks/elixir/exercises/grep/README.md +108 -0
- data/tracks/elixir/exercises/hamming/README.md +79 -0
- data/tracks/elixir/exercises/hello-world/README.md +58 -0
- data/tracks/elixir/exercises/hexadecimal/README.md +51 -0
- data/tracks/elixir/exercises/isogram/README.md +56 -0
- data/tracks/elixir/exercises/kindergarten-garden/README.md +103 -0
- data/tracks/elixir/exercises/largest-series-product/README.md +57 -0
- data/tracks/elixir/exercises/leap/README.md +70 -0
- data/tracks/elixir/exercises/list-ops/README.md +47 -0
- data/tracks/elixir/exercises/luhn/README.md +108 -0
- data/tracks/elixir/exercises/markdown/README.md +55 -0
- data/tracks/elixir/exercises/matrix/README.md +82 -0
- data/tracks/elixir/exercises/meetup/README.md +67 -0
- data/tracks/elixir/exercises/minesweeper/README.md +67 -0
- data/tracks/elixir/exercises/nth-prime/README.md +52 -0
- data/tracks/elixir/exercises/nucleotide-count/README.md +70 -0
- data/tracks/elixir/exercises/ocr-numbers/README.md +122 -0
- data/tracks/elixir/exercises/palindrome-products/README.md +77 -0
- data/tracks/elixir/exercises/pangram/README.md +52 -0
- data/tracks/elixir/exercises/parallel-letter-frequency/README.md +48 -0
- data/tracks/elixir/exercises/pascals-triangle/README.md +58 -0
- data/tracks/elixir/exercises/perfect-numbers/README.md +61 -0
- data/tracks/elixir/exercises/phone-number/README.md +71 -0
- data/tracks/elixir/exercises/pig-latin/README.md +61 -0
- data/tracks/elixir/exercises/poker/README.md +49 -0
- data/tracks/elixir/exercises/prime-factors/README.md +73 -0
- data/tracks/elixir/exercises/protein-translation/README.md +86 -0
- data/tracks/elixir/exercises/pythagorean-triplet/README.md +61 -0
- data/tracks/elixir/exercises/queen-attack/README.md +70 -0
- data/tracks/elixir/exercises/rail-fence-cipher/README.md +97 -0
- data/tracks/elixir/exercises/raindrops/README.md +61 -0
- data/tracks/elixir/exercises/rna-transcription/README.md +62 -0
- data/tracks/elixir/exercises/robot-simulator/README.md +71 -0
- data/tracks/elixir/exercises/roman-numerals/README.md +86 -0
- data/tracks/elixir/exercises/rotational-cipher/README.md +73 -0
- data/tracks/elixir/exercises/run-length-encoding/README.md +67 -0
- data/tracks/elixir/exercises/saddle-points/README.md +70 -0
- data/tracks/elixir/exercises/say/README.md +106 -0
- data/tracks/elixir/exercises/scale-generator/README.md +97 -0
- data/tracks/elixir/exercises/scrabble-score/README.md +81 -0
- data/tracks/elixir/exercises/secret-handshake/README.md +94 -0
- data/tracks/elixir/exercises/series/README.md +64 -0
- data/tracks/elixir/exercises/sieve/README.md +71 -0
- data/tracks/elixir/exercises/simple-cipher/README.md +127 -0
- data/tracks/elixir/exercises/simple-linked-list/README.md +65 -0
- data/tracks/elixir/exercises/space-age/README.md +61 -0
- data/tracks/elixir/exercises/strain/README.md +80 -0
- data/tracks/elixir/exercises/sublist/README.md +58 -0
- data/tracks/elixir/exercises/sum-of-multiples/README.md +55 -0
- data/tracks/elixir/exercises/tournament/README.md +110 -0
- data/tracks/elixir/exercises/triangle/README.md +63 -0
- data/tracks/elixir/exercises/twelve-days/README.md +72 -0
- data/tracks/elixir/exercises/word-count/README.md +56 -0
- data/tracks/elixir/exercises/wordy/README.md +100 -0
- data/tracks/elixir/exercises/zipper/README.md +68 -0
- data/tracks/fsharp/config/exercise_readme.go.tmpl +16 -0
- data/tracks/fsharp/exercises/accumulate/README.md +40 -0
- data/tracks/fsharp/exercises/acronym/README.md +15 -0
- data/tracks/fsharp/exercises/all-your-base/README.md +35 -0
- data/tracks/fsharp/exercises/allergies/README.md +37 -0
- data/tracks/fsharp/exercises/alphametics/README.md +41 -0
- data/tracks/fsharp/exercises/anagram/README.md +13 -0
- data/tracks/fsharp/exercises/atbash-cipher/README.md +34 -0
- data/tracks/fsharp/exercises/bank-account/README.md +30 -0
- data/tracks/fsharp/exercises/beer-song/README.md +331 -0
- data/tracks/fsharp/exercises/binary-search-tree/README.md +60 -0
- data/tracks/fsharp/exercises/binary-search/README.md +41 -0
- data/tracks/fsharp/exercises/bob/README.md +18 -0
- data/tracks/fsharp/exercises/book-store/README.md +74 -0
- data/tracks/fsharp/exercises/bowling/README.md +53 -0
- data/tracks/fsharp/exercises/bracket-push/README.md +10 -0
- data/tracks/fsharp/exercises/change/README.md +23 -0
- data/tracks/fsharp/exercises/circular-buffer/README.md +50 -0
- data/tracks/fsharp/exercises/clock/README.md +13 -0
- data/tracks/fsharp/exercises/connect/README.md +34 -0
- data/tracks/fsharp/exercises/crypto-square/README.md +74 -0
- data/tracks/fsharp/exercises/custom-set/README.md +11 -0
- data/tracks/fsharp/exercises/diamond/README.md +62 -0
- data/tracks/fsharp/exercises/difference-of-squares/README.md +25 -0
- data/tracks/fsharp/exercises/diffie-hellman/README.md +49 -0
- data/tracks/fsharp/exercises/dominoes/README.md +18 -0
- data/tracks/fsharp/exercises/dot-dsl/README.md +28 -0
- data/tracks/fsharp/exercises/error-handling/README.md +13 -0
- data/tracks/fsharp/exercises/etl/README.md +51 -0
- data/tracks/fsharp/exercises/food-chain/README.md +74 -0
- data/tracks/fsharp/exercises/forth/README.md +29 -0
- data/tracks/fsharp/exercises/gigasecond/README.md +15 -0
- data/tracks/fsharp/exercises/go-counting/README.md +37 -0
- data/tracks/fsharp/exercises/grade-school/README.md +47 -0
- data/tracks/fsharp/exercises/grains/README.md +39 -0
- data/tracks/fsharp/exercises/grep/README.md +71 -0
- data/tracks/fsharp/exercises/hamming/README.md +42 -0
- data/tracks/fsharp/exercises/hangman/README.md +21 -0
- data/tracks/fsharp/exercises/hello-world/README.md +21 -0
- data/tracks/fsharp/exercises/house/README.md +117 -0
- data/tracks/fsharp/exercises/isogram/README.md +19 -0
- data/tracks/fsharp/exercises/kindergarten-garden/README.md +66 -0
- data/tracks/fsharp/exercises/largest-series-product/README.md +20 -0
- data/tracks/fsharp/exercises/leap/README.md +33 -0
- data/tracks/fsharp/exercises/ledger/README.md +18 -0
- data/tracks/fsharp/exercises/lens-person/README.md +15 -0
- data/tracks/fsharp/exercises/linked-list/README.md +50 -0
- data/tracks/fsharp/exercises/list-ops/README.md +10 -0
- data/tracks/fsharp/exercises/luhn/README.md +71 -0
- data/tracks/fsharp/exercises/markdown/README.md +18 -0
- data/tracks/fsharp/exercises/matrix/README.md +45 -0
- data/tracks/fsharp/exercises/meetup/README.md +30 -0
- data/tracks/fsharp/exercises/minesweeper/README.md +30 -0
- data/tracks/fsharp/exercises/nth-prime/README.md +21 -0
- data/tracks/fsharp/exercises/nucleotide-count/README.md +33 -0
- data/tracks/fsharp/exercises/ocr-numbers/README.md +85 -0
- data/tracks/fsharp/exercises/palindrome-products/README.md +44 -0
- data/tracks/fsharp/exercises/pangram/README.md +15 -0
- data/tracks/fsharp/exercises/parallel-letter-frequency/README.md +15 -0
- data/tracks/fsharp/exercises/pascals-triangle/README.md +21 -0
- data/tracks/fsharp/exercises/perfect-numbers/README.md +24 -0
- data/tracks/fsharp/exercises/phone-number/README.md +34 -0
- data/tracks/fsharp/exercises/pig-latin/README.md +24 -0
- data/tracks/fsharp/exercises/poker/README.md +15 -0
- data/tracks/fsharp/exercises/pov/README.md +46 -0
- data/tracks/fsharp/exercises/prime-factors/README.md +36 -0
- data/tracks/fsharp/exercises/protein-translation/README.md +49 -0
- data/tracks/fsharp/exercises/proverb/README.md +22 -0
- data/tracks/fsharp/exercises/pythagorean-triplet/README.md +24 -0
- data/tracks/fsharp/exercises/queen-attack/README.md +33 -0
- data/tracks/fsharp/exercises/rail-fence-cipher/README.md +60 -0
- data/tracks/fsharp/exercises/raindrops/README.md +27 -0
- data/tracks/fsharp/exercises/react/README.md +19 -0
- data/tracks/fsharp/exercises/rectangles/README.md +67 -0
- data/tracks/fsharp/exercises/rna-transcription/README.md +29 -0
- data/tracks/fsharp/exercises/robot-name/README.md +22 -0
- data/tracks/fsharp/exercises/robot-simulator/README.md +34 -0
- data/tracks/fsharp/exercises/roman-numerals/README.md +49 -0
- data/tracks/fsharp/exercises/run-length-encoding/README.md +30 -0
- data/tracks/fsharp/exercises/saddle-points/README.md +33 -0
- data/tracks/fsharp/exercises/say/README.md +69 -0
- data/tracks/fsharp/exercises/scale-generator/README.md +60 -0
- data/tracks/fsharp/exercises/scrabble-score/README.md +44 -0
- data/tracks/fsharp/exercises/secret-handshake/README.md +35 -0
- data/tracks/fsharp/exercises/series/README.md +27 -0
- data/tracks/fsharp/exercises/sgf-parsing/README.md +68 -0
- data/tracks/fsharp/exercises/sieve/README.md +34 -0
- data/tracks/fsharp/exercises/simple-cipher/README.md +90 -0
- data/tracks/fsharp/exercises/simple-linked-list/README.md +28 -0
- data/tracks/fsharp/exercises/space-age/README.md +28 -0
- data/tracks/fsharp/exercises/strain/README.md +40 -0
- data/tracks/fsharp/exercises/sublist/README.md +21 -0
- data/tracks/fsharp/exercises/sum-of-multiples/README.md +18 -0
- data/tracks/fsharp/exercises/tournament/README.md +68 -0
- data/tracks/fsharp/exercises/transpose/README.md +65 -0
- data/tracks/fsharp/exercises/tree-building/README.md +30 -0
- data/tracks/fsharp/exercises/triangle/README.md +26 -0
- data/tracks/fsharp/exercises/twelve-days/README.md +39 -0
- data/tracks/fsharp/exercises/two-bucket/README.md +36 -0
- data/tracks/fsharp/exercises/variable-length-quantity/README.md +39 -0
- data/tracks/fsharp/exercises/word-count/README.md +19 -0
- data/tracks/fsharp/exercises/word-search/README.md +30 -0
- data/tracks/fsharp/exercises/wordy/README.md +68 -0
- data/tracks/fsharp/exercises/zebra-puzzle/README.md +32 -0
- data/tracks/fsharp/exercises/zipper/README.md +31 -0
- data/tracks/haskell/README.md +2 -2
- data/tracks/javascript/config.json +232 -4
- data/tracks/kotlin/config.json +8 -1
- data/tracks/kotlin/exercises/rotational-cipher/build.gradle +28 -0
- data/tracks/kotlin/exercises/rotational-cipher/src/example/kotlin/RotationalCipher.kt +18 -0
- data/tracks/kotlin/exercises/rotational-cipher/src/main/kotlin/.keep +0 -0
- data/tracks/kotlin/exercises/rotational-cipher/src/test/kotlin/RotationalCipherTest.kt +81 -0
- data/tracks/kotlin/exercises/settings.gradle +1 -0
- data/tracks/powershell/config/exercise_readme.go.tmpl +16 -0
- data/tracks/powershell/exercises/hamming/README.md +42 -0
- data/tracks/powershell/exercises/hello-world/README.md +21 -0
- data/tracks/purescript/README.md +4 -4
- data/tracks/scala/config.json +266 -6
- data/tracks/scala/config/exercise_readme.go.tmpl +16 -0
- data/tracks/scala/exercises/accumulate/README.md +46 -0
- data/tracks/scala/exercises/acronym/README.md +26 -0
- data/tracks/scala/exercises/all-your-base/README.md +46 -0
- data/tracks/scala/exercises/allergies/README.md +48 -0
- data/tracks/scala/exercises/alphametics/README.md +46 -0
- data/tracks/scala/exercises/anagram/README.md +24 -0
- data/tracks/scala/exercises/atbash-cipher/README.md +45 -0
- data/tracks/scala/exercises/bank-account/README.md +54 -0
- data/tracks/scala/exercises/beer-song/README.md +338 -0
- data/tracks/scala/exercises/binary-search-tree/README.md +71 -0
- data/tracks/scala/exercises/binary-search/README.md +52 -0
- data/tracks/scala/exercises/binary/README.md +46 -0
- data/tracks/scala/exercises/bob/README.md +29 -0
- data/tracks/scala/exercises/book-store/README.md +85 -0
- data/tracks/scala/exercises/bowling/README.md +64 -0
- data/tracks/scala/exercises/bracket-push/README.md +21 -0
- data/tracks/scala/exercises/change/README.md +34 -0
- data/tracks/scala/exercises/clock/README.md +24 -0
- data/tracks/scala/exercises/connect/README.md +53 -0
- data/tracks/scala/exercises/crypto-square/README.md +85 -0
- data/tracks/scala/exercises/custom-set/README.md +22 -0
- data/tracks/scala/exercises/difference-of-squares/README.md +30 -0
- data/tracks/scala/exercises/dominoes/README.md +29 -0
- data/tracks/scala/exercises/etl/README.md +62 -0
- data/tracks/scala/exercises/food-chain/README.md +81 -0
- data/tracks/scala/exercises/forth/README.md +40 -0
- data/tracks/scala/exercises/gigasecond/README.md +26 -0
- data/tracks/scala/exercises/grade-school/README.md +53 -0
- data/tracks/scala/exercises/grains/README.md +45 -0
- data/tracks/scala/exercises/hamming/README.md +112 -0
- data/tracks/scala/exercises/hello-world/README.md +38 -0
- data/tracks/scala/exercises/hexadecimal/README.md +25 -0
- data/tracks/scala/exercises/house/README.md +124 -0
- data/tracks/scala/exercises/isogram/README.md +30 -0
- data/tracks/scala/exercises/kindergarten-garden/README.md +77 -0
- data/tracks/scala/exercises/largest-series-product/README.md +31 -0
- data/tracks/scala/exercises/leap/README.md +50 -0
- data/tracks/scala/exercises/lens-person/README.md +11 -7
- data/tracks/scala/exercises/linked-list/README.md +45 -0
- data/tracks/scala/exercises/luhn/README.md +82 -0
- data/tracks/scala/exercises/matrix/README.md +56 -0
- data/tracks/scala/exercises/meetup/README.md +41 -0
- data/tracks/scala/exercises/minesweeper/README.md +41 -0
- data/tracks/scala/exercises/nth-prime/README.md +26 -0
- data/tracks/scala/exercises/nucleotide-count/README.md +107 -0
- data/tracks/scala/exercises/ocr-numbers/README.md +96 -0
- data/tracks/scala/exercises/octal/README.md +60 -0
- data/tracks/scala/exercises/palindrome-products/README.md +51 -0
- data/tracks/scala/exercises/pangram/README.md +26 -0
- data/tracks/scala/exercises/parallel-letter-frequency/README.md +50 -0
- data/tracks/scala/exercises/pascals-triangle/README.md +32 -0
- data/tracks/scala/exercises/perfect-numbers/README.md +35 -0
- data/tracks/scala/exercises/phone-number/README.md +56 -0
- data/tracks/scala/exercises/pig-latin/README.md +35 -0
- data/tracks/scala/exercises/prime-factors/README.md +47 -0
- data/tracks/scala/exercises/protein-translation/README.md +60 -0
- data/tracks/scala/exercises/pythagorean-triplet/README.md +35 -0
- data/tracks/scala/exercises/queen-attack/README.md +44 -0
- data/tracks/scala/exercises/rail-fence-cipher/README.md +71 -0
- data/tracks/scala/exercises/raindrops/README.md +35 -0
- data/tracks/scala/exercises/rna-transcription/README.md +36 -0
- data/tracks/scala/exercises/robot-name/README.md +40 -0
- data/tracks/scala/exercises/robot-simulator/README.md +45 -0
- data/tracks/scala/exercises/roman-numerals/README.md +72 -0
- data/tracks/scala/exercises/run-length-encoding/README.md +41 -0
- data/tracks/scala/exercises/saddle-points/README.md +44 -0
- data/tracks/scala/exercises/say/README.md +80 -0
- data/tracks/scala/exercises/scrabble-score/README.md +55 -0
- data/tracks/scala/exercises/secret-handshake/README.md +46 -0
- data/tracks/scala/exercises/series/README.md +38 -0
- data/tracks/scala/exercises/sgf-parsing/README.md +79 -0
- data/tracks/scala/exercises/sieve/README.md +45 -0
- data/tracks/scala/exercises/simple-cipher/README.md +101 -0
- data/tracks/scala/exercises/simple-linked-list/README.md +39 -0
- data/tracks/scala/exercises/space-age/README.md +35 -0
- data/tracks/scala/exercises/spiral-matrix/README.md +41 -0
- data/tracks/scala/exercises/strain/README.md +51 -0
- data/tracks/scala/exercises/sublist/README.md +32 -0
- data/tracks/scala/exercises/sum-of-multiples/README.md +29 -0
- data/tracks/scala/exercises/triangle/README.md +37 -0
- data/tracks/scala/exercises/trinary/README.md +39 -0
- data/tracks/scala/exercises/variable-length-quantity/README.md +54 -0
- data/tracks/scala/exercises/word-count/README.md +30 -0
- data/tracks/scala/exercises/wordy/README.md +74 -0
- data/tracks/scala/exercises/zebra-puzzle/README.md +43 -0
- data/tracks/scala/exercises/zipper/README.md +42 -0
- metadata +401 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Clock
|
|
2
|
+
|
|
3
|
+
Implement a clock that handles times without dates.
|
|
4
|
+
|
|
5
|
+
You should be able to add and subtract minutes to it.
|
|
6
|
+
|
|
7
|
+
Two clocks that represent the same time should be equal to each other.
|
|
8
|
+
|
|
9
|
+
## Running tests
|
|
10
|
+
|
|
11
|
+
Execute the tests with:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
$ elixir bob_test.exs
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
(Replace `bob_test.exs` with the name of the test file.)
|
|
18
|
+
|
|
19
|
+
### Pending tests
|
|
20
|
+
|
|
21
|
+
In the test suites, all but the first test have been skipped.
|
|
22
|
+
|
|
23
|
+
Once you get a test passing, you can unskip the next one by
|
|
24
|
+
commenting out the relevant `@tag :pending` with a `#` symbol.
|
|
25
|
+
|
|
26
|
+
For example:
|
|
27
|
+
|
|
28
|
+
```elixir
|
|
29
|
+
# @tag :pending
|
|
30
|
+
test "shouting" do
|
|
31
|
+
assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
|
|
32
|
+
end
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Or, you can enable all the tests by commenting out the
|
|
36
|
+
`ExUnit.configure` line in the test suite.
|
|
37
|
+
|
|
38
|
+
```elixir
|
|
39
|
+
# ExUnit.configure exclude: :pending, trace: true
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
For more detailed information about the Elixir track, please
|
|
43
|
+
see the [help page](http://exercism.io/languages/elixir).
|
|
44
|
+
|
|
45
|
+
## Source
|
|
46
|
+
|
|
47
|
+
Pairing session with Erin Drummond [https://twitter.com/ebdrummond](https://twitter.com/ebdrummond)
|
|
48
|
+
|
|
49
|
+
## Submitting Incomplete Solutions
|
|
50
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Collatz Conjecture
|
|
2
|
+
|
|
3
|
+
The Collatz Conjecture or 3x+1 problem can be summarized as follows:
|
|
4
|
+
|
|
5
|
+
Take any positive integer n. If n is even, divide n by 2 to get n / 2. If n is
|
|
6
|
+
odd, multiply n by 3 and add 1 to get 3n + 1. Repeat the process indefinitely.
|
|
7
|
+
The conjecture states that no matter which number you start with, you will
|
|
8
|
+
always reach 1 eventually.
|
|
9
|
+
|
|
10
|
+
Given a number n, return the number of steps required to reach 1.
|
|
11
|
+
|
|
12
|
+
## Examples
|
|
13
|
+
Starting with n = 12, the steps would be as follows:
|
|
14
|
+
|
|
15
|
+
0. 12
|
|
16
|
+
1. 6
|
|
17
|
+
2. 3
|
|
18
|
+
3. 10
|
|
19
|
+
4. 5
|
|
20
|
+
5. 16
|
|
21
|
+
6. 8
|
|
22
|
+
7. 4
|
|
23
|
+
8. 2
|
|
24
|
+
9. 1
|
|
25
|
+
|
|
26
|
+
Resulting in 9 steps. So for input n = 12, the return value would be 9.
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## Running tests
|
|
30
|
+
|
|
31
|
+
Execute the tests with:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
$ elixir bob_test.exs
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
(Replace `bob_test.exs` with the name of the test file.)
|
|
38
|
+
|
|
39
|
+
### Pending tests
|
|
40
|
+
|
|
41
|
+
In the test suites, all but the first test have been skipped.
|
|
42
|
+
|
|
43
|
+
Once you get a test passing, you can unskip the next one by
|
|
44
|
+
commenting out the relevant `@tag :pending` with a `#` symbol.
|
|
45
|
+
|
|
46
|
+
For example:
|
|
47
|
+
|
|
48
|
+
```elixir
|
|
49
|
+
# @tag :pending
|
|
50
|
+
test "shouting" do
|
|
51
|
+
assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
|
|
52
|
+
end
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Or, you can enable all the tests by commenting out the
|
|
56
|
+
`ExUnit.configure` line in the test suite.
|
|
57
|
+
|
|
58
|
+
```elixir
|
|
59
|
+
# ExUnit.configure exclude: :pending, trace: true
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
For more detailed information about the Elixir track, please
|
|
63
|
+
see the [help page](http://exercism.io/languages/elixir).
|
|
64
|
+
|
|
65
|
+
## Source
|
|
66
|
+
|
|
67
|
+
An unsolved problem in mathematics named after mathematician Lothar Collatz [https://en.wikipedia.org/wiki/3x_%2B_1_problem](https://en.wikipedia.org/wiki/3x_%2B_1_problem)
|
|
68
|
+
|
|
69
|
+
## Submitting Incomplete Solutions
|
|
70
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Connect
|
|
2
|
+
|
|
3
|
+
Compute the result for a game of Hex / Polygon.
|
|
4
|
+
|
|
5
|
+
The abstract boardgame known as
|
|
6
|
+
[Hex](https://en.wikipedia.org/wiki/Hex_%28board_game%29) / Polygon /
|
|
7
|
+
CON-TAC-TIX is quite simple in rules, though complex in practice. Two players
|
|
8
|
+
place stones on a rhombus with hexagonal fields. The player to connect his/her
|
|
9
|
+
stones to the opposite side first wins. The four sides of the rhombus are
|
|
10
|
+
divided between the two players (i.e. one player gets assigned a side and the
|
|
11
|
+
side directly opposite it and the other player gets assigned the two other
|
|
12
|
+
sides).
|
|
13
|
+
|
|
14
|
+
Your goal is to build a program that given a simple representation of a board
|
|
15
|
+
computes the winner (or lack thereof). Note that all games need not be "fair".
|
|
16
|
+
(For example, players may have mismatched piece counts.)
|
|
17
|
+
|
|
18
|
+
The boards look like this (with spaces added for readability, which won't be in
|
|
19
|
+
the representation passed to your code):
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
. O . X .
|
|
23
|
+
. X X O .
|
|
24
|
+
O O O X .
|
|
25
|
+
. X O X O
|
|
26
|
+
X O O O X
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
"Player `O`" plays from top to bottom, "Player `X`" plays from left to right. In
|
|
30
|
+
the above example `O` has made a connection from left to right but nobody has
|
|
31
|
+
won since `O` didn't connect top and bottom.
|
|
32
|
+
|
|
33
|
+
## Running tests
|
|
34
|
+
|
|
35
|
+
Execute the tests with:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
$ elixir bob_test.exs
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
(Replace `bob_test.exs` with the name of the test file.)
|
|
42
|
+
|
|
43
|
+
### Pending tests
|
|
44
|
+
|
|
45
|
+
In the test suites, all but the first test have been skipped.
|
|
46
|
+
|
|
47
|
+
Once you get a test passing, you can unskip the next one by
|
|
48
|
+
commenting out the relevant `@tag :pending` with a `#` symbol.
|
|
49
|
+
|
|
50
|
+
For example:
|
|
51
|
+
|
|
52
|
+
```elixir
|
|
53
|
+
# @tag :pending
|
|
54
|
+
test "shouting" do
|
|
55
|
+
assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
|
|
56
|
+
end
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Or, you can enable all the tests by commenting out the
|
|
60
|
+
`ExUnit.configure` line in the test suite.
|
|
61
|
+
|
|
62
|
+
```elixir
|
|
63
|
+
# ExUnit.configure exclude: :pending, trace: true
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
For more detailed information about the Elixir track, please
|
|
67
|
+
see the [help page](http://exercism.io/languages/elixir).
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
## Submitting Incomplete Solutions
|
|
71
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Crypto Square
|
|
2
|
+
|
|
3
|
+
Implement the classic method for composing secret messages called a square code.
|
|
4
|
+
|
|
5
|
+
Given an English text, output the encoded version of that text.
|
|
6
|
+
|
|
7
|
+
First, the input is normalized: the spaces and punctuation are removed
|
|
8
|
+
from the English text and the message is downcased.
|
|
9
|
+
|
|
10
|
+
Then, the normalized characters are broken into rows. These rows can be
|
|
11
|
+
regarded as forming a rectangle when printed with intervening newlines.
|
|
12
|
+
|
|
13
|
+
For example, the sentence
|
|
14
|
+
|
|
15
|
+
> If man was meant to stay on the ground, god would have given us roots.
|
|
16
|
+
|
|
17
|
+
is normalized to:
|
|
18
|
+
|
|
19
|
+
> ifmanwasmeanttostayonthegroundgodwouldhavegivenusroots
|
|
20
|
+
|
|
21
|
+
The plaintext should be organized in to a rectangle. The size of the
|
|
22
|
+
rectangle (`r x c`) should be decided by the length of the message,
|
|
23
|
+
such that `c >= r` and `c - r <= 1`, where `c` is the number of columns
|
|
24
|
+
and `r` is the number of rows.
|
|
25
|
+
|
|
26
|
+
Our normalized text is 54 characters long, dictating a rectangle with
|
|
27
|
+
`c = 8` and `r = 7`:
|
|
28
|
+
|
|
29
|
+
```plain
|
|
30
|
+
ifmanwas
|
|
31
|
+
meanttos
|
|
32
|
+
tayonthe
|
|
33
|
+
groundgo
|
|
34
|
+
dwouldha
|
|
35
|
+
vegivenu
|
|
36
|
+
sroots
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
The coded message is obtained by reading down the columns going left to
|
|
40
|
+
right.
|
|
41
|
+
|
|
42
|
+
The message above is coded as:
|
|
43
|
+
|
|
44
|
+
```plain
|
|
45
|
+
imtgdvsfearwermayoogoanouuiontnnlvtwttddesaohghnsseoau
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Output the encoded text in chunks. Phrases that fill perfect squares
|
|
49
|
+
`(r X r)` should be output in `r`-length chunks separated by spaces.
|
|
50
|
+
Imperfect squares will have `n` empty spaces. Those spaces should be distributed evenly across the last `n` rows.
|
|
51
|
+
|
|
52
|
+
```plain
|
|
53
|
+
imtgdvs fearwer mayoogo anouuio ntnnlvt wttddes aohghn sseoau
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Notice that were we to stack these, we could visually decode the
|
|
57
|
+
cyphertext back in to the original message:
|
|
58
|
+
|
|
59
|
+
```plain
|
|
60
|
+
imtgdvs
|
|
61
|
+
fearwer
|
|
62
|
+
mayoogo
|
|
63
|
+
anouuio
|
|
64
|
+
ntnnlvt
|
|
65
|
+
wttddes
|
|
66
|
+
aohghn
|
|
67
|
+
sseoau
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Running tests
|
|
71
|
+
|
|
72
|
+
Execute the tests with:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
$ elixir bob_test.exs
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
(Replace `bob_test.exs` with the name of the test file.)
|
|
79
|
+
|
|
80
|
+
### Pending tests
|
|
81
|
+
|
|
82
|
+
In the test suites, all but the first test have been skipped.
|
|
83
|
+
|
|
84
|
+
Once you get a test passing, you can unskip the next one by
|
|
85
|
+
commenting out the relevant `@tag :pending` with a `#` symbol.
|
|
86
|
+
|
|
87
|
+
For example:
|
|
88
|
+
|
|
89
|
+
```elixir
|
|
90
|
+
# @tag :pending
|
|
91
|
+
test "shouting" do
|
|
92
|
+
assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
|
|
93
|
+
end
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Or, you can enable all the tests by commenting out the
|
|
97
|
+
`ExUnit.configure` line in the test suite.
|
|
98
|
+
|
|
99
|
+
```elixir
|
|
100
|
+
# ExUnit.configure exclude: :pending, trace: true
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
For more detailed information about the Elixir track, please
|
|
104
|
+
see the [help page](http://exercism.io/languages/elixir).
|
|
105
|
+
|
|
106
|
+
## Source
|
|
107
|
+
|
|
108
|
+
J Dalbey's Programming Practice problems [http://users.csc.calpoly.edu/~jdalbey/103/Projects/ProgrammingPractice.html](http://users.csc.calpoly.edu/~jdalbey/103/Projects/ProgrammingPractice.html)
|
|
109
|
+
|
|
110
|
+
## Submitting Incomplete Solutions
|
|
111
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Custom Set
|
|
2
|
+
|
|
3
|
+
Create a custom set type.
|
|
4
|
+
|
|
5
|
+
Sometimes it is necessary to define a custom data structure of some
|
|
6
|
+
type, like a set. In this exercise you will define your own set. How it
|
|
7
|
+
works internally doesn't matter, as long as it behaves like a set of
|
|
8
|
+
unique elements.
|
|
9
|
+
|
|
10
|
+
## Running tests
|
|
11
|
+
|
|
12
|
+
Execute the tests with:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
$ elixir bob_test.exs
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
(Replace `bob_test.exs` with the name of the test file.)
|
|
19
|
+
|
|
20
|
+
### Pending tests
|
|
21
|
+
|
|
22
|
+
In the test suites, all but the first test have been skipped.
|
|
23
|
+
|
|
24
|
+
Once you get a test passing, you can unskip the next one by
|
|
25
|
+
commenting out the relevant `@tag :pending` with a `#` symbol.
|
|
26
|
+
|
|
27
|
+
For example:
|
|
28
|
+
|
|
29
|
+
```elixir
|
|
30
|
+
# @tag :pending
|
|
31
|
+
test "shouting" do
|
|
32
|
+
assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
|
|
33
|
+
end
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Or, you can enable all the tests by commenting out the
|
|
37
|
+
`ExUnit.configure` line in the test suite.
|
|
38
|
+
|
|
39
|
+
```elixir
|
|
40
|
+
# ExUnit.configure exclude: :pending, trace: true
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
For more detailed information about the Elixir track, please
|
|
44
|
+
see the [help page](http://exercism.io/languages/elixir).
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
## Submitting Incomplete Solutions
|
|
48
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Diamond
|
|
2
|
+
|
|
3
|
+
The diamond kata takes as its input a letter, and outputs it in a diamond
|
|
4
|
+
shape. Given a letter, it prints a diamond starting with 'A', with the
|
|
5
|
+
supplied letter at the widest point.
|
|
6
|
+
|
|
7
|
+
## Requirements
|
|
8
|
+
|
|
9
|
+
* The first row contains one 'A'.
|
|
10
|
+
* The last row contains one 'A'.
|
|
11
|
+
* All rows, except the first and last, have exactly two identical letters.
|
|
12
|
+
* All rows have as many trailing spaces as leading spaces. (This might be 0).
|
|
13
|
+
* The diamond is horizontally symmetric.
|
|
14
|
+
* The diamond is vertically symmetric.
|
|
15
|
+
* The diamond has a square shape (width equals height).
|
|
16
|
+
* The letters form a diamond shape.
|
|
17
|
+
* The top half has the letters in ascending order.
|
|
18
|
+
* The bottom half has the letters in descending order.
|
|
19
|
+
* The four corners (containing the spaces) are triangles.
|
|
20
|
+
|
|
21
|
+
## Examples
|
|
22
|
+
|
|
23
|
+
In the following examples, spaces are indicated by `·` characters.
|
|
24
|
+
|
|
25
|
+
Diamond for letter 'A':
|
|
26
|
+
|
|
27
|
+
```plain
|
|
28
|
+
A
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Diamond for letter 'C':
|
|
32
|
+
|
|
33
|
+
```plain
|
|
34
|
+
··A··
|
|
35
|
+
·B·B·
|
|
36
|
+
C···C
|
|
37
|
+
·B·B·
|
|
38
|
+
··A··
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Diamond for letter 'E':
|
|
42
|
+
|
|
43
|
+
```plain
|
|
44
|
+
····A····
|
|
45
|
+
···B·B···
|
|
46
|
+
··C···C··
|
|
47
|
+
·D·····D·
|
|
48
|
+
E·······E
|
|
49
|
+
·D·····D·
|
|
50
|
+
··C···C··
|
|
51
|
+
···B·B···
|
|
52
|
+
····A····
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Running tests
|
|
56
|
+
|
|
57
|
+
Execute the tests with:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
$ elixir bob_test.exs
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
(Replace `bob_test.exs` with the name of the test file.)
|
|
64
|
+
|
|
65
|
+
### Pending tests
|
|
66
|
+
|
|
67
|
+
In the test suites, all but the first test have been skipped.
|
|
68
|
+
|
|
69
|
+
Once you get a test passing, you can unskip the next one by
|
|
70
|
+
commenting out the relevant `@tag :pending` with a `#` symbol.
|
|
71
|
+
|
|
72
|
+
For example:
|
|
73
|
+
|
|
74
|
+
```elixir
|
|
75
|
+
# @tag :pending
|
|
76
|
+
test "shouting" do
|
|
77
|
+
assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
|
|
78
|
+
end
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Or, you can enable all the tests by commenting out the
|
|
82
|
+
`ExUnit.configure` line in the test suite.
|
|
83
|
+
|
|
84
|
+
```elixir
|
|
85
|
+
# ExUnit.configure exclude: :pending, trace: true
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
For more detailed information about the Elixir track, please
|
|
89
|
+
see the [help page](http://exercism.io/languages/elixir).
|
|
90
|
+
|
|
91
|
+
## Source
|
|
92
|
+
|
|
93
|
+
Seb Rose [http://claysnow.co.uk/recycling-tests-in-tdd/](http://claysnow.co.uk/recycling-tests-in-tdd/)
|
|
94
|
+
|
|
95
|
+
## Submitting Incomplete Solutions
|
|
96
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|