trackler 2.2.1.128 → 2.2.1.129
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/problem-specifications/exercises/bracket-push/canonical-data.json +9 -1
- data/tracks/bash/config.json +3 -3
- data/tracks/ceylon/exercises/bracket-push/source/bracketpush/BracketsTest.ceylon +3 -1
- data/tracks/crystal/exercises/difference-of-squares/spec/difference_of_squares_spec.cr +9 -9
- data/tracks/csharp/config.json +12 -0
- data/tracks/csharp/exercises/Exercises.sln +7 -1
- data/tracks/csharp/exercises/yacht/Example.cs +71 -0
- data/tracks/csharp/exercises/yacht/README.md +34 -0
- data/tracks/csharp/exercises/yacht/Yacht.cs +26 -0
- data/tracks/csharp/exercises/yacht/Yacht.csproj +18 -0
- data/tracks/csharp/exercises/yacht/YachtTest.cs +162 -0
- data/tracks/csharp/generators/Exercises/Yacht.cs +20 -0
- data/tracks/dart/exercises/leap/lib/example.dart +4 -8
- data/tracks/dart/exercises/leap/lib/leap.dart +1 -1
- data/tracks/dart/exercises/leap/test/leap_test.dart +14 -16
- data/tracks/delphi/config.json +11 -0
- data/tracks/delphi/exercises/bracket-push/BracketPush.dpr +60 -0
- data/tracks/delphi/exercises/bracket-push/README.md +31 -0
- data/tracks/delphi/exercises/bracket-push/uBracketPushExample.pas +40 -0
- data/tracks/delphi/exercises/bracket-push/uBracketPushTest.pas +158 -0
- data/tracks/fsharp/config.json +18 -6
- data/tracks/fsharp/exercises/Exercises.sln +7 -1
- data/tracks/fsharp/exercises/accumulate/Accumulate.fsproj +2 -2
- data/tracks/fsharp/exercises/acronym/Acronym.fsproj +2 -2
- data/tracks/fsharp/exercises/all-your-base/AllYourBase.fsproj +2 -2
- data/tracks/fsharp/exercises/allergies/Allergies.fsproj +2 -2
- data/tracks/fsharp/exercises/alphametics/Alphametics.fsproj +2 -2
- data/tracks/fsharp/exercises/anagram/Anagram.fsproj +2 -2
- data/tracks/fsharp/exercises/armstrong-numbers/ArmstrongNumbers.fsproj +2 -2
- data/tracks/fsharp/exercises/atbash-cipher/AtbashCipher.fsproj +2 -2
- data/tracks/fsharp/exercises/bank-account/BankAccount.fsproj +2 -2
- data/tracks/fsharp/exercises/beer-song/BeerSong.fsproj +2 -2
- data/tracks/fsharp/exercises/binary/Binary.fsproj +2 -2
- data/tracks/fsharp/exercises/binary-search/BinarySearch.fsproj +2 -2
- data/tracks/fsharp/exercises/binary-search-tree/BinarySearchTree.fsproj +2 -2
- data/tracks/fsharp/exercises/bob/Bob.fsproj +2 -2
- data/tracks/fsharp/exercises/book-store/BookStore.fsproj +2 -2
- data/tracks/fsharp/exercises/bowling/Bowling.fsproj +2 -2
- data/tracks/fsharp/exercises/bowling/BowlingTest.fs +15 -1
- data/tracks/fsharp/exercises/bracket-push/BracketPush.fsproj +2 -2
- data/tracks/fsharp/exercises/change/Change.fsproj +2 -2
- data/tracks/fsharp/exercises/circular-buffer/CircularBuffer.fsproj +2 -2
- data/tracks/fsharp/exercises/circular-buffer/CircularBufferTest.fs +1 -1
- data/tracks/fsharp/exercises/clock/Clock.fsproj +2 -2
- data/tracks/fsharp/exercises/collatz-conjecture/CollatzConjecture.fsproj +2 -2
- data/tracks/fsharp/exercises/complex-numbers/ComplexNumbers.fsproj +2 -2
- data/tracks/fsharp/exercises/connect/Connect.fsproj +2 -2
- data/tracks/fsharp/exercises/crypto-square/CryptoSquare.fsproj +2 -2
- data/tracks/fsharp/exercises/custom-set/CustomSet.fsproj +2 -2
- data/tracks/fsharp/exercises/diamond/Diamond.fsproj +2 -2
- data/tracks/fsharp/exercises/difference-of-squares/DifferenceOfSquares.fsproj +2 -2
- data/tracks/fsharp/exercises/diffie-hellman/DiffieHellman.fsproj +2 -2
- data/tracks/fsharp/exercises/dominoes/Dominoes.fsproj +2 -2
- data/tracks/fsharp/exercises/dot-dsl/DotDsl.fsproj +2 -2
- data/tracks/fsharp/exercises/error-handling/ErrorHandling.fsproj +2 -2
- data/tracks/fsharp/exercises/etl/Etl.fsproj +2 -2
- data/tracks/fsharp/exercises/food-chain/FoodChain.fsproj +2 -2
- data/tracks/fsharp/exercises/forth/Forth.fsproj +2 -2
- data/tracks/fsharp/exercises/forth/ForthTest.fs +1 -1
- data/tracks/fsharp/exercises/gigasecond/Gigasecond.fsproj +2 -2
- data/tracks/fsharp/exercises/go-counting/GoCounting.fsproj +2 -2
- data/tracks/fsharp/exercises/grade-school/GradeSchool.fsproj +2 -2
- data/tracks/fsharp/exercises/grains/Grains.fsproj +2 -2
- data/tracks/fsharp/exercises/grains/GrainsTest.fs +1 -1
- data/tracks/fsharp/exercises/grep/Grep.fsproj +2 -2
- data/tracks/fsharp/exercises/grep/GrepTest.fs +1 -1
- data/tracks/fsharp/exercises/hamming/Hamming.fsproj +2 -2
- data/tracks/fsharp/exercises/hangman/Hangman.fsproj +2 -2
- data/tracks/fsharp/exercises/hello-world/HelloWorld.fsproj +2 -2
- data/tracks/fsharp/exercises/hexadecimal/Hexadecimal.fsproj +2 -2
- data/tracks/fsharp/exercises/house/Example.fs +2 -2
- data/tracks/fsharp/exercises/house/House.fsproj +2 -2
- data/tracks/fsharp/exercises/house/HouseTest.fs +28 -211
- data/tracks/fsharp/exercises/isbn-verifier/IsbnVerifier.fsproj +2 -2
- data/tracks/fsharp/exercises/isbn-verifier/IsbnVerifierTest.fs +2 -2
- data/tracks/fsharp/exercises/isogram/Isogram.fsproj +2 -2
- data/tracks/fsharp/exercises/isogram/IsogramTest.fs +1 -1
- data/tracks/fsharp/exercises/kindergarten-garden/KindergartenGarden.fsproj +2 -2
- data/tracks/fsharp/exercises/largest-series-product/LargestSeriesProduct.fsproj +2 -2
- data/tracks/fsharp/exercises/leap/Leap.fsproj +2 -2
- data/tracks/fsharp/exercises/ledger/Ledger.fsproj +2 -2
- data/tracks/fsharp/exercises/lens-person/LensPerson.fsproj +2 -2
- data/tracks/fsharp/exercises/linked-list/LinkedList.fsproj +2 -2
- data/tracks/fsharp/exercises/list-ops/ListOps.fsproj +2 -2
- data/tracks/fsharp/exercises/list-ops/ListOpsTest.fs +1 -1
- data/tracks/fsharp/exercises/luhn/Luhn.fsproj +2 -2
- data/tracks/fsharp/exercises/markdown/Markdown.fsproj +2 -2
- data/tracks/fsharp/exercises/matrix/Matrix.fsproj +2 -2
- data/tracks/fsharp/exercises/meetup/Meetup.fsproj +2 -2
- data/tracks/fsharp/exercises/minesweeper/Minesweeper.fsproj +2 -2
- data/tracks/fsharp/exercises/nth-prime/NthPrime.fsproj +2 -2
- data/tracks/fsharp/exercises/nucleotide-count/NucleotideCount.fsproj +2 -2
- data/tracks/fsharp/exercises/ocr-numbers/OcrNumbers.fsproj +2 -2
- data/tracks/fsharp/exercises/octal/Octal.fsproj +2 -2
- data/tracks/fsharp/exercises/palindrome-products/PalindromeProducts.fsproj +2 -2
- data/tracks/fsharp/exercises/pangram/Pangram.fsproj +2 -2
- data/tracks/fsharp/exercises/parallel-letter-frequency/ParallelLetterFrequency.fsproj +2 -2
- data/tracks/fsharp/exercises/pascals-triangle/PascalsTriangle.fsproj +2 -2
- data/tracks/fsharp/exercises/perfect-numbers/PerfectNumbers.fsproj +2 -2
- data/tracks/fsharp/exercises/phone-number/PhoneNumber.fsproj +2 -2
- data/tracks/fsharp/exercises/pig-latin/PigLatin.fsproj +2 -2
- data/tracks/fsharp/exercises/poker/Poker.fsproj +2 -2
- data/tracks/fsharp/exercises/pov/Pov.fsproj +2 -2
- data/tracks/fsharp/exercises/pov/PovTest.fs +2 -2
- data/tracks/fsharp/exercises/prime-factors/PrimeFactors.fsproj +2 -2
- data/tracks/fsharp/exercises/protein-translation/ProteinTranslation.fsproj +2 -2
- data/tracks/fsharp/exercises/proverb/Proverb.fsproj +2 -2
- data/tracks/fsharp/exercises/pythagorean-triplet/PythagoreanTriplet.fsproj +2 -2
- data/tracks/fsharp/exercises/queen-attack/QueenAttack.fsproj +2 -2
- data/tracks/fsharp/exercises/rail-fence-cipher/RailFenceCipher.fsproj +2 -2
- data/tracks/fsharp/exercises/raindrops/Raindrops.fsproj +2 -2
- data/tracks/fsharp/exercises/rational-numbers/RationalNumbers.fsproj +2 -2
- data/tracks/fsharp/exercises/react/Example.fs +1 -1
- data/tracks/fsharp/exercises/react/React.fsproj +2 -2
- data/tracks/fsharp/exercises/react/ReactTest.fs +14 -1
- data/tracks/fsharp/exercises/rectangles/Rectangles.fsproj +2 -2
- data/tracks/fsharp/exercises/reverse-string/ReverseString.fsproj +2 -2
- data/tracks/fsharp/exercises/rna-transcription/RnaTranscription.fsproj +2 -2
- data/tracks/fsharp/exercises/robot-name/RobotName.fsproj +2 -2
- data/tracks/fsharp/exercises/robot-simulator/RobotSimulator.fsproj +2 -2
- data/tracks/fsharp/exercises/roman-numerals/RomanNumerals.fsproj +2 -2
- data/tracks/fsharp/exercises/rotational-cipher/RotationalCipher.fsproj +2 -2
- data/tracks/fsharp/exercises/run-length-encoding/RunLengthEncoding.fsproj +2 -2
- data/tracks/fsharp/exercises/saddle-points/SaddlePoints.fsproj +2 -2
- data/tracks/fsharp/exercises/say/Say.fsproj +2 -2
- data/tracks/fsharp/exercises/scale-generator/ScaleGenerator.fsproj +2 -2
- data/tracks/fsharp/exercises/scrabble-score/ScrabbleScore.fsproj +2 -2
- data/tracks/fsharp/exercises/secret-handshake/SecretHandshake.fsproj +2 -2
- data/tracks/fsharp/exercises/series/Series.fsproj +2 -2
- data/tracks/fsharp/exercises/sgf-parsing/SgfParsing.fsproj +2 -2
- data/tracks/fsharp/exercises/sieve/Sieve.fsproj +2 -2
- data/tracks/fsharp/exercises/simple-cipher/SimpleCipher.fsproj +2 -2
- data/tracks/fsharp/exercises/simple-linked-list/SimpleLinkedList.fsproj +2 -2
- data/tracks/fsharp/exercises/space-age/SpaceAge.fsproj +2 -2
- data/tracks/fsharp/exercises/spiral-matrix/SpiralMatrix.fsproj +2 -2
- data/tracks/fsharp/exercises/strain/Strain.fsproj +2 -2
- data/tracks/fsharp/exercises/sublist/Sublist.fsproj +2 -2
- data/tracks/fsharp/exercises/sum-of-multiples/SumOfMultiples.fsproj +2 -2
- data/tracks/fsharp/exercises/tournament/Tournament.fsproj +2 -2
- data/tracks/fsharp/exercises/transpose/Transpose.fsproj +2 -2
- data/tracks/fsharp/exercises/tree-building/TreeBuilding.fsproj +2 -2
- data/tracks/fsharp/exercises/triangle/Triangle.fsproj +2 -2
- data/tracks/fsharp/exercises/trinary/Trinary.fsproj +2 -2
- data/tracks/fsharp/exercises/twelve-days/TwelveDays.fsproj +2 -2
- data/tracks/fsharp/exercises/two-bucket/TwoBucket.fsproj +2 -2
- data/tracks/fsharp/exercises/two-fer/TwoFer.fsproj +2 -2
- data/tracks/fsharp/exercises/variable-length-quantity/VariableLengthQuantity.fsproj +2 -2
- data/tracks/fsharp/exercises/word-count/WordCount.fsproj +2 -2
- data/tracks/fsharp/exercises/word-search/WordSearch.fsproj +2 -2
- data/tracks/fsharp/exercises/word-search/WordSearchTest.fs +1 -1
- data/tracks/fsharp/exercises/wordy/Wordy.fsproj +2 -2
- data/tracks/fsharp/exercises/yacht/Example.fs +65 -0
- data/tracks/fsharp/exercises/yacht/Program.fs +1 -0
- data/tracks/fsharp/exercises/yacht/README.md +34 -0
- data/tracks/fsharp/exercises/yacht/Yacht.fs +17 -0
- data/tracks/fsharp/exercises/yacht/Yacht.fsproj +23 -0
- data/tracks/fsharp/exercises/yacht/YachtTest.fs +113 -0
- data/tracks/fsharp/exercises/zebra-puzzle/ZebraPuzzle.fsproj +2 -2
- data/tracks/fsharp/exercises/zipper/Zipper.fsproj +2 -2
- data/tracks/fsharp/generators/CanonicalData.fs +2 -20
- data/tracks/fsharp/generators/Common.fs +1 -1
- data/tracks/fsharp/generators/Generators.fs +24 -11
- data/tracks/fsharp/generators/Generators.fsproj +4 -4
- data/tracks/fsharp/generators/Options.fs +1 -1
- data/tracks/haskell/exercises/bracket-push/package.yaml +1 -1
- data/tracks/haskell/exercises/bracket-push/test/Tests.hs +4 -0
- data/tracks/java/config.json +13 -0
- data/tracks/java/exercises/dominoes/.meta/src/reference/java/ChainNotFoundException.java +5 -0
- data/tracks/java/exercises/dominoes/.meta/src/reference/java/Domino.java +30 -0
- data/tracks/java/exercises/dominoes/.meta/src/reference/java/Dominoes.java +67 -0
- data/tracks/java/exercises/dominoes/.meta/version +2 -0
- data/tracks/java/exercises/dominoes/README.md +29 -0
- data/tracks/java/exercises/dominoes/build.gradle +18 -0
- data/tracks/java/exercises/dominoes/src/main/java/ChainNotFoundException.java +5 -0
- data/tracks/java/exercises/dominoes/src/main/java/Domino.java +30 -0
- data/tracks/java/exercises/dominoes/src/test/java/DominoesTest.java +230 -0
- data/tracks/java/exercises/settings.gradle +1 -0
- data/tracks/javascript/.eslintignore +0 -1
- data/tracks/javascript/exercises/simple-cipher/example.js +4 -6
- data/tracks/javascript/exercises/simple-cipher/simple-cipher.spec.js +7 -3
- data/tracks/php/config.json +7 -7
- data/tracks/python/config.json +195 -188
- data/tracks/python/exercises/alphametics/alphametics_test.py +1 -0
- data/tracks/python/exercises/bank-account/README.md +20 -1
- data/tracks/python/exercises/go-counting/README.md +2 -0
- data/tracks/python/test/check-exercises.py +1 -1
- data/tracks/rust/_test/ensure-stubs-compile.sh +5 -0
- data/tracks/rust/config/exercise_readme.go.tmpl +1 -1
- data/tracks/rust/config.json +10 -0
- data/tracks/rust/exercises/accumulate/README.md +1 -1
- data/tracks/rust/exercises/acronym/README.md +1 -1
- data/tracks/rust/exercises/all-your-base/README.md +1 -1
- data/tracks/rust/exercises/all-your-base/example.rs +15 -5
- data/tracks/rust/exercises/all-your-base/src/lib.rs +8 -1
- data/tracks/rust/exercises/all-your-base/tests/all-your-base.rs +10 -5
- data/tracks/rust/exercises/allergies/README.md +1 -1
- data/tracks/rust/exercises/alphametics/README.md +1 -1
- data/tracks/rust/exercises/anagram/README.md +1 -1
- data/tracks/rust/exercises/armstrong-numbers/.gitignore +3 -0
- data/tracks/rust/exercises/armstrong-numbers/Cargo.toml +3 -0
- data/tracks/rust/exercises/armstrong-numbers/README.md +51 -0
- data/tracks/rust/exercises/armstrong-numbers/example.rs +7 -0
- data/tracks/rust/exercises/armstrong-numbers/src/lib.rs +3 -0
- data/tracks/rust/exercises/armstrong-numbers/tests/armstrong-numbers.rs +49 -0
- data/tracks/rust/exercises/atbash-cipher/README.md +1 -1
- data/tracks/rust/exercises/beer-song/README.md +1 -1
- data/tracks/rust/exercises/binary-search/README.md +1 -1
- data/tracks/rust/exercises/bob/README.md +1 -1
- data/tracks/rust/exercises/book-store/README.md +1 -1
- data/tracks/rust/exercises/bowling/README.md +1 -1
- data/tracks/rust/exercises/bowling/example.rs +13 -8
- data/tracks/rust/exercises/bowling/src/lib.rs +22 -0
- data/tracks/rust/exercises/bowling/tests/bowling.rs +31 -31
- data/tracks/rust/exercises/bracket-push/README.md +1 -1
- data/tracks/rust/exercises/circular-buffer/README.md +1 -1
- data/tracks/rust/exercises/clock/README.md +1 -1
- data/tracks/rust/exercises/collatz-conjecture/README.md +1 -1
- data/tracks/rust/exercises/crypto-square/README.md +1 -1
- data/tracks/rust/exercises/crypto-square/example.rs +11 -3
- data/tracks/rust/exercises/crypto-square/tests/crypto-square.rs +8 -16
- data/tracks/rust/exercises/custom-set/README.md +1 -1
- data/tracks/rust/exercises/custom-set/example.rs +17 -17
- data/tracks/rust/exercises/custom-set/tests/custom-set.rs +84 -84
- data/tracks/rust/exercises/decimal/README.md +1 -1
- data/tracks/rust/exercises/difference-of-squares/README.md +1 -1
- data/tracks/rust/exercises/diffie-hellman/README.md +1 -1
- data/tracks/rust/exercises/dominoes/README.md +1 -1
- data/tracks/rust/exercises/etl/README.md +1 -1
- data/tracks/rust/exercises/forth/README.md +1 -1
- data/tracks/rust/exercises/gigasecond/README.md +1 -1
- data/tracks/rust/exercises/grade-school/README.md +1 -1
- data/tracks/rust/exercises/grains/README.md +1 -1
- data/tracks/rust/exercises/hamming/README.md +1 -1
- data/tracks/rust/exercises/hello-world/README.md +1 -1
- data/tracks/rust/exercises/hexadecimal/README.md +1 -1
- data/tracks/rust/exercises/isbn-verifier/README.md +1 -1
- data/tracks/rust/exercises/isogram/README.md +1 -1
- data/tracks/rust/exercises/largest-series-product/README.md +1 -1
- data/tracks/rust/exercises/largest-series-product/example.rs +10 -4
- data/tracks/rust/exercises/largest-series-product/src/lib.rs +9 -0
- data/tracks/rust/exercises/largest-series-product/tests/largest-series-product.rs +3 -3
- data/tracks/rust/exercises/leap/README.md +1 -1
- data/tracks/rust/exercises/luhn/README.md +1 -1
- data/tracks/rust/exercises/luhn-from/README.md +1 -1
- data/tracks/rust/exercises/luhn-trait/README.md +1 -1
- data/tracks/rust/exercises/macros/.meta/ALLOWED_TO_NOT_COMPILE +2 -0
- data/tracks/rust/exercises/macros/README.md +1 -1
- data/tracks/rust/exercises/minesweeper/README.md +1 -1
- data/tracks/rust/exercises/nth-prime/README.md +1 -1
- data/tracks/rust/exercises/nucleotide-codons/README.md +1 -1
- data/tracks/rust/exercises/nucleotide-count/README.md +1 -1
- data/tracks/rust/exercises/ocr-numbers/README.md +1 -1
- data/tracks/rust/exercises/ocr-numbers/example.rs +14 -6
- data/tracks/rust/exercises/ocr-numbers/src/lib.rs +7 -1
- data/tracks/rust/exercises/ocr-numbers/tests/ocr-numbers.rs +2 -2
- data/tracks/rust/exercises/pangram/README.md +1 -1
- data/tracks/rust/exercises/parallel-letter-frequency/README.md +1 -1
- data/tracks/rust/exercises/pascals-triangle/README.md +1 -1
- data/tracks/rust/exercises/perfect-numbers/README.md +1 -1
- data/tracks/rust/exercises/phone-number/README.md +1 -1
- data/tracks/rust/exercises/pig-latin/README.md +1 -1
- data/tracks/rust/exercises/poker/README.md +1 -1
- data/tracks/rust/exercises/prime-factors/README.md +1 -1
- data/tracks/rust/exercises/protein-translation/README.md +1 -1
- data/tracks/rust/exercises/proverb/README.md +1 -1
- data/tracks/rust/exercises/pythagorean-triplet/README.md +1 -1
- data/tracks/rust/exercises/queen-attack/README.md +1 -1
- data/tracks/rust/exercises/raindrops/README.md +1 -1
- data/tracks/rust/exercises/react/README.md +1 -1
- data/tracks/rust/exercises/react/example.rs +27 -18
- data/tracks/rust/exercises/react/src/lib.rs +25 -10
- data/tracks/rust/exercises/react/tests/react.rs +113 -83
- data/tracks/rust/exercises/rectangles/README.md +1 -1
- data/tracks/rust/exercises/reverse-string/README.md +1 -1
- data/tracks/rust/exercises/rna-transcription/README.md +1 -1
- data/tracks/rust/exercises/robot-name/README.md +1 -1
- data/tracks/rust/exercises/robot-simulator/README.md +1 -1
- data/tracks/rust/exercises/roman-numerals/README.md +1 -1
- data/tracks/rust/exercises/rotational-cipher/README.md +1 -1
- data/tracks/rust/exercises/run-length-encoding/README.md +1 -1
- data/tracks/rust/exercises/saddle-points/README.md +1 -1
- data/tracks/rust/exercises/say/README.md +1 -1
- data/tracks/rust/exercises/scrabble-score/README.md +1 -1
- data/tracks/rust/exercises/series/README.md +1 -1
- data/tracks/rust/exercises/sieve/README.md +1 -1
- data/tracks/rust/exercises/simple-linked-list/README.md +1 -1
- data/tracks/rust/exercises/space-age/README.md +1 -1
- data/tracks/rust/exercises/sublist/README.md +1 -1
- data/tracks/rust/exercises/sum-of-multiples/README.md +1 -1
- data/tracks/rust/exercises/tournament/README.md +1 -1
- data/tracks/rust/exercises/triangle/README.md +1 -1
- data/tracks/rust/exercises/two-bucket/README.md +1 -1
- data/tracks/rust/exercises/variable-length-quantity/README.md +1 -1
- data/tracks/rust/exercises/word-count/README.md +1 -1
- data/tracks/rust/exercises/wordy/README.md +1 -1
- data/tracks/typescript/config.json +11 -0
- data/tracks/typescript/exercises/list-ops/README.md +35 -0
- data/tracks/typescript/exercises/list-ops/list-ops.example.ts +80 -0
- data/tracks/typescript/exercises/list-ops/list-ops.test.ts +117 -0
- data/tracks/typescript/exercises/list-ops/list-ops.ts +0 -0
- data/tracks/typescript/exercises/list-ops/package.json +36 -0
- data/tracks/typescript/exercises/list-ops/tsconfig.json +22 -0
- data/tracks/typescript/exercises/list-ops/tslint.json +127 -0
- data/tracks/typescript/exercises/list-ops/yarn.lock +2624 -0
- metadata +42 -3
- data/tracks/dart/exercises/leap/pubspec.lock +0 -293
@@ -0,0 +1,31 @@
|
|
1
|
+
# Bracket Push
|
2
|
+
|
3
|
+
Given a string containing brackets `[]`, braces `{}` and parentheses `()`,
|
4
|
+
verify that all the pairs are matched and nested correctly.
|
5
|
+
|
6
|
+
## Testing
|
7
|
+
|
8
|
+
In order to run the tests for this track, you will need to install
|
9
|
+
DUnitX. Please see the [installation](http://www.exercism.io/languages/delphi/installation) instructions for more information.
|
10
|
+
|
11
|
+
### Loading Exercises into Delphi
|
12
|
+
|
13
|
+
If Delphi is properly installed, and `*.dpr` file types have been associated with Delphi, then double clicking the supplied `*.dpr` file will start Delphi and load the exercise/project. `control + F9` is the keyboard shortcut to compile the project or pressing `F9` will compile and run the project.
|
14
|
+
|
15
|
+
Alternatively you may opt to start Delphi and load your project via. the `File` drop down menu.
|
16
|
+
|
17
|
+
### When Questions Come Up
|
18
|
+
We monitor the [Pascal-Delphi](https://gitter.im/exercism/Pascal-Delphi) support room on [gitter.im](https://gitter.im) to help you with any questions that might arise.
|
19
|
+
|
20
|
+
### Submitting Exercises
|
21
|
+
|
22
|
+
Note that, when trying to submit an exercise, make sure the exercise file you're submitting is in the `exercism/delphi/<exerciseName>` directory.
|
23
|
+
|
24
|
+
For example, if you're submitting `ubob.pas` for the Bob exercise, the submit command would be something like `exercism submit <path_to_exercism_dir>/delphi/bob/ubob.pas`.
|
25
|
+
|
26
|
+
## Source
|
27
|
+
|
28
|
+
Ginna Baker
|
29
|
+
|
30
|
+
## Submitting Incomplete Solutions
|
31
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
@@ -0,0 +1,40 @@
|
|
1
|
+
unit uBracketPush;
|
2
|
+
|
3
|
+
interface
|
4
|
+
|
5
|
+
type
|
6
|
+
TBracketPush = class
|
7
|
+
private
|
8
|
+
class var
|
9
|
+
fBrackets: string;
|
10
|
+
fPreviousLength: integer;
|
11
|
+
public
|
12
|
+
class function IsPaired(aInput: string): boolean;
|
13
|
+
end;
|
14
|
+
|
15
|
+
implementation
|
16
|
+
uses SysUtils;
|
17
|
+
|
18
|
+
{ BracketPush }
|
19
|
+
|
20
|
+
class function TBracketPush.IsPaired(aInput: string): boolean;
|
21
|
+
var
|
22
|
+
aChar: char;
|
23
|
+
begin
|
24
|
+
fBrackets := '';
|
25
|
+
for aChar in aInput do
|
26
|
+
if aChar in ['[',']','{','}','(',')'] then
|
27
|
+
fBrackets := fBrackets + aChar;
|
28
|
+
fPreviousLength := length(fBrackets);
|
29
|
+
|
30
|
+
while length(fBrackets) > 0 do
|
31
|
+
begin
|
32
|
+
fBrackets := fBrackets.Replace('[]', '').Replace('{}', '').Replace('()', '');
|
33
|
+
if length(fBrackets) = fPreviousLength then
|
34
|
+
exit(false);
|
35
|
+
fPreviousLength := length(fBrackets);
|
36
|
+
end;
|
37
|
+
result := true;
|
38
|
+
end;
|
39
|
+
|
40
|
+
end.
|
@@ -0,0 +1,158 @@
|
|
1
|
+
unit uBracketPushTest;
|
2
|
+
|
3
|
+
interface
|
4
|
+
uses
|
5
|
+
DUnitX.TestFramework;
|
6
|
+
|
7
|
+
const
|
8
|
+
CanonicalVersion = '1.3.0';
|
9
|
+
|
10
|
+
type
|
11
|
+
[TestFixture]
|
12
|
+
BracketPushTest = class(TObject)
|
13
|
+
public
|
14
|
+
[Test]
|
15
|
+
// [Ignore('Comment the "[Ignore]" statement to run the test')]
|
16
|
+
procedure paired_square_brackets;
|
17
|
+
|
18
|
+
[Test]
|
19
|
+
[Ignore]
|
20
|
+
procedure empty_string;
|
21
|
+
|
22
|
+
[Test]
|
23
|
+
[Ignore]
|
24
|
+
procedure unpaired_brackets;
|
25
|
+
|
26
|
+
[Test]
|
27
|
+
[Ignore]
|
28
|
+
procedure wrong_ordered_brackets;
|
29
|
+
|
30
|
+
[Test]
|
31
|
+
[Ignore]
|
32
|
+
procedure wrong_closing_bracket;
|
33
|
+
|
34
|
+
[Test]
|
35
|
+
[Ignore]
|
36
|
+
procedure paired_with_whitespace;
|
37
|
+
|
38
|
+
[Test]
|
39
|
+
[Ignore]
|
40
|
+
procedure partially_paired_brackets;
|
41
|
+
|
42
|
+
[Test]
|
43
|
+
[Ignore]
|
44
|
+
procedure simple_nested_brackets;
|
45
|
+
|
46
|
+
[Test]
|
47
|
+
[Ignore]
|
48
|
+
procedure several_paired_brackets;
|
49
|
+
|
50
|
+
[Test]
|
51
|
+
[Ignore]
|
52
|
+
procedure paired_and_nested_brackets;
|
53
|
+
|
54
|
+
[Test]
|
55
|
+
[Ignore]
|
56
|
+
procedure unopened_closing_brackets;
|
57
|
+
|
58
|
+
[Test]
|
59
|
+
[Ignore]
|
60
|
+
procedure unpaired_and_nested_brackets;
|
61
|
+
|
62
|
+
[Test]
|
63
|
+
[Ignore]
|
64
|
+
procedure paired_and_wrong_nested_brackets;
|
65
|
+
|
66
|
+
[Test]
|
67
|
+
[Ignore]
|
68
|
+
procedure math_expression;
|
69
|
+
|
70
|
+
[Test]
|
71
|
+
[Ignore]
|
72
|
+
procedure complex_latex_expression;
|
73
|
+
end;
|
74
|
+
|
75
|
+
implementation
|
76
|
+
uses uBracketPush;
|
77
|
+
|
78
|
+
|
79
|
+
{ BracketPushTest }
|
80
|
+
|
81
|
+
procedure BracketPushTest.complex_latex_expression;
|
82
|
+
begin
|
83
|
+
Assert.IsTrue(TBracketPush.IsPaired('\\left(\\begin{array}{cc} \\frac{1}{3} & x\\\\ \\mathrm{e}^{x} &... x^2 \\end{array}\\right)'));
|
84
|
+
end;
|
85
|
+
|
86
|
+
procedure BracketPushTest.empty_string;
|
87
|
+
begin
|
88
|
+
Assert.IsTrue(TBracketPush.IsPaired(''));
|
89
|
+
end;
|
90
|
+
|
91
|
+
procedure BracketPushTest.math_expression;
|
92
|
+
begin
|
93
|
+
Assert.IsTrue(TBracketPush.IsPaired('(((185 + 223.85) * 15) - 543)/2'));
|
94
|
+
end;
|
95
|
+
|
96
|
+
procedure BracketPushTest.paired_and_nested_brackets;
|
97
|
+
begin
|
98
|
+
Assert.IsTrue(TBracketPush.IsPaired('([{}({}[])])'));
|
99
|
+
end;
|
100
|
+
|
101
|
+
procedure BracketPushTest.paired_and_wrong_nested_brackets;
|
102
|
+
begin
|
103
|
+
Assert.IsFalse(TBracketPush.IsPaired('[({]})'));
|
104
|
+
end;
|
105
|
+
|
106
|
+
procedure BracketPushTest.paired_square_brackets;
|
107
|
+
begin
|
108
|
+
Assert.IsTrue(TBracketPush.IsPaired('[]'));
|
109
|
+
end;
|
110
|
+
|
111
|
+
procedure BracketPushTest.paired_with_whitespace;
|
112
|
+
begin
|
113
|
+
Assert.IsTrue(TBracketPush.IsPaired('{ }'));
|
114
|
+
end;
|
115
|
+
|
116
|
+
procedure BracketPushTest.partially_paired_brackets;
|
117
|
+
begin
|
118
|
+
Assert.IsFalse(TBracketPush.IsPaired('{[])'));
|
119
|
+
end;
|
120
|
+
|
121
|
+
procedure BracketPushTest.several_paired_brackets;
|
122
|
+
begin
|
123
|
+
Assert.IsTrue(TBracketPush.IsPaired('{}[]'));
|
124
|
+
end;
|
125
|
+
|
126
|
+
procedure BracketPushTest.simple_nested_brackets;
|
127
|
+
begin
|
128
|
+
Assert.IsTrue(TBracketPush.IsPaired('{[]}'));
|
129
|
+
end;
|
130
|
+
|
131
|
+
procedure BracketPushTest.unopened_closing_brackets;
|
132
|
+
begin
|
133
|
+
Assert.IsFalse(TBracketPush.IsPaired('{[)][]}'));
|
134
|
+
end;
|
135
|
+
|
136
|
+
procedure BracketPushTest.unpaired_and_nested_brackets;
|
137
|
+
begin
|
138
|
+
Assert.IsFalse(TBracketPush.IsPaired('([{])'));
|
139
|
+
end;
|
140
|
+
|
141
|
+
procedure BracketPushTest.unpaired_brackets;
|
142
|
+
begin
|
143
|
+
Assert.IsFalse(TBracketPush.IsPaired('[['));
|
144
|
+
end;
|
145
|
+
|
146
|
+
procedure BracketPushTest.wrong_closing_bracket;
|
147
|
+
begin
|
148
|
+
Assert.IsFalse(TBracketPush.IsPaired('{]'));
|
149
|
+
end;
|
150
|
+
|
151
|
+
procedure BracketPushTest.wrong_ordered_brackets;
|
152
|
+
begin
|
153
|
+
Assert.IsFalse(TBracketPush.IsPaired('}{'));
|
154
|
+
end;
|
155
|
+
|
156
|
+
initialization
|
157
|
+
TDUnitX.RegisterTestFixture(BracketPushTest);
|
158
|
+
end.
|
data/tracks/fsharp/config.json
CHANGED
@@ -53,7 +53,7 @@
|
|
53
53
|
"optional_values",
|
54
54
|
"strings"
|
55
55
|
],
|
56
|
-
"unlocked_by":
|
56
|
+
"unlocked_by": null,
|
57
57
|
"uuid": "2ee3cc7a-db3f-4668-9983-ed6d0fea95d1"
|
58
58
|
},
|
59
59
|
{
|
@@ -126,14 +126,14 @@
|
|
126
126
|
"uuid": "e7f74f6c-16ea-40d8-94f7-7034bc6ee938"
|
127
127
|
},
|
128
128
|
{
|
129
|
-
"core":
|
129
|
+
"core": true,
|
130
130
|
"difficulty": 3,
|
131
131
|
"slug": "beer-song",
|
132
132
|
"topics": [
|
133
133
|
"algorithms",
|
134
134
|
"text_formatting"
|
135
135
|
],
|
136
|
-
"unlocked_by":
|
136
|
+
"unlocked_by": null,
|
137
137
|
"uuid": "0ea0d92f-5510-4ba9-b419-3f5ad029b74f"
|
138
138
|
},
|
139
139
|
{
|
@@ -180,7 +180,7 @@
|
|
180
180
|
"uuid": "ecae4faa-c516-4a71-8d55-9c53403d8826"
|
181
181
|
},
|
182
182
|
{
|
183
|
-
"core":
|
183
|
+
"core": true,
|
184
184
|
"difficulty": 4,
|
185
185
|
"slug": "allergies",
|
186
186
|
"topics": [
|
@@ -188,7 +188,7 @@
|
|
188
188
|
"enumerations",
|
189
189
|
"filtering"
|
190
190
|
],
|
191
|
-
"unlocked_by":
|
191
|
+
"unlocked_by": null,
|
192
192
|
"uuid": "221dff26-0495-4d4b-9363-14a5d7263271"
|
193
193
|
},
|
194
194
|
{
|
@@ -885,9 +885,21 @@
|
|
885
885
|
"algorithms",
|
886
886
|
"matrices"
|
887
887
|
],
|
888
|
-
"unlocked_by": "
|
888
|
+
"unlocked_by": "kindergarten-garden",
|
889
889
|
"uuid": "52f8f299-b93b-4f44-bd5b-b445741b285d"
|
890
890
|
},
|
891
|
+
{
|
892
|
+
"core": false,
|
893
|
+
"difficulty": 5,
|
894
|
+
"slug": "yacht",
|
895
|
+
"topics": [
|
896
|
+
"discriminated_unions",
|
897
|
+
"games",
|
898
|
+
"parsing"
|
899
|
+
],
|
900
|
+
"unlocked_by": "space-age",
|
901
|
+
"uuid": "005721ef-264e-4f81-ae63-ae72b0e5310f"
|
902
|
+
},
|
891
903
|
{
|
892
904
|
"core": false,
|
893
905
|
"difficulty": 6,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
Microsoft Visual Studio Solution File, Format Version 12.00
|
1
|
+
Microsoft Visual Studio Solution File, Format Version 12.00
|
2
2
|
# Visual Studio 15
|
3
3
|
VisualStudioVersion = 15.0.26730.8
|
4
4
|
MinimumVisualStudioVersion = 15.0.26124.0
|
@@ -228,6 +228,8 @@ Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "ComplexNumbers", "complex-n
|
|
228
228
|
EndProject
|
229
229
|
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "RationalNumbers", "rational-numbers\RationalNumbers.fsproj", "{0D472A8A-E241-473A-85C6-548D0177A6AF}"
|
230
230
|
EndProject
|
231
|
+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Yacht", "yacht\Yacht.fsproj", "{0CB237A3-DD45-4EE9-B43A-5B03D3A0724A}"
|
232
|
+
EndProject
|
231
233
|
Global
|
232
234
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
233
235
|
Debug|Any CPU = Debug|Any CPU
|
@@ -686,6 +688,10 @@ Global
|
|
686
688
|
{0D472A8A-E241-473A-85C6-548D0177A6AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
687
689
|
{0D472A8A-E241-473A-85C6-548D0177A6AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
688
690
|
{0D472A8A-E241-473A-85C6-548D0177A6AF}.Release|Any CPU.Build.0 = Release|Any CPU
|
691
|
+
{0CB237A3-DD45-4EE9-B43A-5B03D3A0724A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
692
|
+
{0CB237A3-DD45-4EE9-B43A-5B03D3A0724A}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
693
|
+
{0CB237A3-DD45-4EE9-B43A-5B03D3A0724A}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
694
|
+
{0CB237A3-DD45-4EE9-B43A-5B03D3A0724A}.Release|Any CPU.Build.0 = Release|Any CPU
|
689
695
|
EndGlobalSection
|
690
696
|
GlobalSection(SolutionProperties) = preSolution
|
691
697
|
HideSolutionNode = FALSE
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// This file was auto-generated based on version 1.
|
1
|
+
// This file was auto-generated based on version 1.2.0 of the canonical data.
|
2
2
|
|
3
3
|
module BowlingTest
|
4
4
|
|
@@ -185,3 +185,17 @@ let ``Bonus roll for a spare in the last frame must be rolled before score can b
|
|
185
185
|
let game = rollMany rolls (newGame())
|
186
186
|
score game |> should equal None
|
187
187
|
|
188
|
+
[<Fact(Skip = "Remove to run test")>]
|
189
|
+
let ``Cannot roll after bonus roll for spare`` () =
|
190
|
+
let rolls = [0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 7; 3; 2]
|
191
|
+
let startingRolls = rollMany rolls (newGame())
|
192
|
+
let game = roll 2 startingRolls
|
193
|
+
score game |> should equal None
|
194
|
+
|
195
|
+
[<Fact(Skip = "Remove to run test")>]
|
196
|
+
let ``Cannot roll after bonus rolls for strike`` () =
|
197
|
+
let rolls = [0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 10; 3; 2]
|
198
|
+
let startingRolls = rollMany rolls (newGame())
|
199
|
+
let game = roll 2 startingRolls
|
200
|
+
score game |> should equal None
|
201
|
+
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|
@@ -13,10 +13,10 @@
|
|
13
13
|
</ItemGroup>
|
14
14
|
|
15
15
|
<ItemGroup>
|
16
|
-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.
|
16
|
+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.0" />
|
17
17
|
<PackageReference Include="xunit" Version="2.3.1" />
|
18
18
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
19
|
-
<PackageReference Include="FsUnit.xUnit" Version="3.
|
19
|
+
<PackageReference Include="FsUnit.xUnit" Version="3.1.0" />
|
20
20
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
21
21
|
</ItemGroup>
|
22
22
|
|