diff --git a/exercises/practice/two-bucket/.meta/tests.toml b/exercises/practice/two-bucket/.meta/tests.toml index dc483a6cd..e5779c980 100644 --- a/exercises/practice/two-bucket/.meta/tests.toml +++ b/exercises/practice/two-bucket/.meta/tests.toml @@ -1,6 +1,13 @@ -# This is an auto-generated file. Regular comments will be removed when this -# file is regenerated. Regenerating will not touch any manually added keys, -# so comments can be added in a "comment" key. +# This is an auto-generated file. +# +# Regenerating this file via `configlet sync` will: +# - Recreate every `description` key/value pair +# - Recreate every `reimplements` key/value pair, where they exist in problem-specifications +# - Remove any `include = true` key/value pair (an omitted `include` key implies inclusion) +# - Preserve any other key/value pair +# +# As user-added comments (using the # character) will be removed when this file +# is regenerated, comments can be added via a `comment` key. [a6f2b4ba-065f-4dca-b6f0-e3eee51cb661] description = "Measure using bucket one of size 3 and bucket two of size 5 - start with bucket one" @@ -20,6 +27,12 @@ description = "Measure one step using bucket one of size 1 and bucket two of siz [eb329c63-5540-4735-b30b-97f7f4df0f84] description = "Measure using bucket one of size 2 and bucket two of size 3 - start with bucket one and end with bucket two" +[58d70152-bf2b-46bb-ad54-be58ebe94c03] +description = "Measure using bucket one much bigger than bucket two" + +[9dbe6499-caa5-4a58-b5ce-c988d71b8981] +description = "Measure using bucket one much smaller than bucket two" + [449be72d-b10a-4f4b-a959-ca741e333b72] description = "Not possible to reach the goal" include = false diff --git a/exercises/practice/two-bucket/TwoBucketTests.fs b/exercises/practice/two-bucket/TwoBucketTests.fs index b8f65cd1b..54931388f 100644 --- a/exercises/practice/two-bucket/TwoBucketTests.fs +++ b/exercises/practice/two-bucket/TwoBucketTests.fs @@ -59,6 +59,24 @@ let ``Measure using bucket one of size 2 and bucket two of size 3 - start with b let expected = { Moves = 2; GoalBucket = Bucket.Two; OtherBucket = 2 } measure bucketOne bucketTwo goal startBucket |> should equal expected +[] +let ``Measure using bucket one much bigger than bucket two`` () = + let bucketOne = 5 + let bucketTwo = 1 + let goal = 2 + let startBucket = Bucket.One + let expected = { Moves = 6; GoalBucket = Bucket.One; OtherBucket = 1 } + measure bucketOne bucketTwo goal startBucket |> should equal expected + +[] +let ``Measure using bucket one much smaller than bucket two`` () = + let bucketOne = 3 + let bucketTwo = 15 + let goal = 9 + let startBucket = Bucket.One + let expected = { Moves = 6; GoalBucket = Bucket.Two; OtherBucket = 0 } + measure bucketOne bucketTwo goal startBucket |> should equal expected + [] let ``With the same buckets but a different goal, then it is possible`` () = let bucketOne = 6