Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bringing your track in line with the latest changes to Problem Specifications #916

Merged
merged 8 commits into from
Nov 15, 2020
28 changes: 28 additions & 0 deletions exercises/acronym/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[canonical-tests]

# basic
"1e22cceb-c5e4-4562-9afe-aef07ad1eaf4" = true

# lowercase words
"79ae3889-a5c0-4b01-baf0-232d31180c08" = true

# punctuation
"ec7000a7-3931-4a17-890e-33ca2073a548" = true

# all caps word
"32dd261c-0c92-469a-9c5c-b192e94a63b0" = true

# punctuation without whitespace
"ae2ac9fa-a606-4d05-8244-3bcc4659c1d4" = true

# very long abbreviation
"0e4b1e7c-1a6d-48fb-81a7-bf65eb9e69f9" = true

# consecutive delimiters
"6a078f49-c68d-4b7b-89af-33a1a98c28cc" = true

# apostrophes
"5118b4b1-4572-434c-8d57-5b762e57973e" = true

# underscore emphasis
"adc12eab-ec2d-414f-b48c-66a4fc06cdef" = true
64 changes: 64 additions & 0 deletions exercises/all-your-base/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
[canonical-tests]

# single bit one to decimal
"5ce422f9-7a4b-4f44-ad29-49c67cb32d2c" = true

# binary to single decimal
"0cc3fea8-bb79-46ac-a2ab-5a2c93051033" = true

# single decimal to binary
"f12db0f9-0d3d-42c2-b3ba-e38cb375a2b8" = true

# binary to multiple decimal
"2c45cf54-6da3-4748-9733-5a3c765d925b" = true

# decimal to binary
"65ddb8b4-8899-4fcc-8618-181b2cf0002d" = true

# trinary to hexadecimal
"8d418419-02a7-4824-8b7a-352d33c6987e" = true

# hexadecimal to trinary
"d3901c80-8190-41b9-bd86-38d988efa956" = true

# 15-bit integer
"5d42f85e-21ad-41bd-b9be-a3e8e4258bbf" = true

# empty list
"d68788f7-66dd-43f8-a543-f15b6d233f83" = true

# single zero
"5e27e8da-5862-4c5f-b2a9-26c0382b6be7" = true

# multiple zeros
"2e1c2573-77e4-4b9c-8517-6c56c5bcfdf2" = true

# leading zeros
"3530cd9f-8d6d-43f5-bc6e-b30b1db9629b" = true

# input base is one
"a6b476a1-1901-4f2a-92c4-4d91917ae023" = true

# input base is zero
"e21a693a-7a69-450b-b393-27415c26a016" = true

# input base is negative
"54a23be5-d99e-41cc-88e0-a650ffe5fcc2" = true

# negative digit
"9eccf60c-dcc9-407b-95d8-c37b8be56bb6" = true

# invalid positive digit
"232fa4a5-e761-4939-ba0c-ed046cd0676a" = true

# output base is one
"14238f95-45da-41dc-95ce-18f860b30ad3" = true

# output base is zero
"73dac367-da5c-4a37-95fe-c87fad0a4047" = true

# output base is negative
"13f81f42-ff53-4e24-89d9-37603a48ebd9" = true

# both bases are negative
"0e6c895d-8a5d-4868-a345-309d094cfe8d" = true
153 changes: 153 additions & 0 deletions exercises/allergies/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
[canonical-tests]

# Haskell's testing strategy is to use property tests
# instead of explicitly listing all the cases in problem-specifications.
# For this reason, the tests below are marked as true.
# They're covered by the property tests.

# not allergic to anything
"17fc7296-2440-4ac4-ad7b-d07c321bc5a0" = true

# allergic only to eggs
"07ced27b-1da5-4c2e-8ae2-cb2791437546" = true

# allergic to eggs and something else
"5035b954-b6fa-4b9b-a487-dae69d8c5f96" = true

# allergic to something, but not eggs
"64a6a83a-5723-4b5b-a896-663307403310" = true

# allergic to everything
"90c8f484-456b-41c4-82ba-2d08d93231c6" = true

# not allergic to anything
"d266a59a-fccc-413b-ac53-d57cb1f0db9d" = true

# allergic only to peanuts
"ea210a98-860d-46b2-a5bf-50d8995b3f2a" = true

# allergic to peanuts and something else
"eac69ae9-8d14-4291-ac4b-7fd2c73d3a5b" = true

# allergic to something, but not peanuts
"9152058c-ce39-4b16-9b1d-283ec6d25085" = true

# allergic to everything
"d2d71fd8-63d5-40f9-a627-fbdaf88caeab" = true

# not allergic to anything
"b948b0a1-cbf7-4b28-a244-73ff56687c80" = true

# allergic only to shellfish
"9ce9a6f3-53e9-4923-85e0-73019047c567" = true

# allergic to shellfish and something else
"b272fca5-57ba-4b00-bd0c-43a737ab2131" = true

# allergic to something, but not shellfish
"21ef8e17-c227-494e-8e78-470a1c59c3d8" = true

# allergic to everything
"cc789c19-2b5e-4c67-b146-625dc8cfa34e" = true

# not allergic to anything
"651bde0a-2a74-46c4-ab55-02a0906ca2f5" = true

# allergic only to strawberries
"b649a750-9703-4f5f-b7f7-91da2c160ece" = true

# allergic to strawberries and something else
"50f5f8f3-3bac-47e6-8dba-2d94470a4bc6" = true

# allergic to something, but not strawberries
"23dd6952-88c9-48d7-a7d5-5d0343deb18d" = true

# allergic to everything
"74afaae2-13b6-43a2-837a-286cd42e7d7e" = true

# not allergic to anything
"c49a91ef-6252-415e-907e-a9d26ef61723" = true

# allergic only to tomatoes
"b69c5131-b7d0-41ad-a32c-e1b2cc632df8" = true

# allergic to tomatoes and something else
"1ca50eb1-f042-4ccf-9050-341521b929ec" = true

# allergic to something, but not tomatoes
"e9846baa-456b-4eff-8025-034b9f77bd8e" = true

# allergic to everything
"b2414f01-f3ad-4965-8391-e65f54dad35f" = true

# not allergic to anything
"978467ab-bda4-49f7-b004-1d011ead947c" = true

# allergic only to chocolate
"59cf4e49-06ea-4139-a2c1-d7aad28f8cbc" = true

# allergic to chocolate and something else
"b0a7c07b-2db7-4f73-a180-565e07040ef1" = true

# allergic to something, but not chocolate
"f5506893-f1ae-482a-b516-7532ba5ca9d2" = true

# allergic to everything
"02debb3d-d7e2-4376-a26b-3c974b6595c6" = true

# not allergic to anything
"17f4a42b-c91e-41b8-8a76-4797886c2d96" = true

# allergic only to pollen
"7696eba7-1837-4488-882a-14b7b4e3e399" = true

# allergic to pollen and something else
"9a49aec5-fa1f-405d-889e-4dfc420db2b6" = true

# allergic to something, but not pollen
"3cb8e79f-d108-4712-b620-aa146b1954a9" = true

# allergic to everything
"1dc3fe57-7c68-4043-9d51-5457128744b2" = true

# not allergic to anything
"d3f523d6-3d50-419b-a222-d4dfd62ce314" = true

# allergic only to cats
"eba541c3-c886-42d3-baef-c048cb7fcd8f" = true

# allergic to cats and something else
"ba718376-26e0-40b7-bbbe-060287637ea5" = true

# allergic to something, but not cats
"3c6dbf4a-5277-436f-8b88-15a206f2d6c4" = true

# allergic to everything
"1faabb05-2b98-4995-9046-d83e4a48a7c1" = true

# no allergies
"f9c1b8e7-7dc5-4887-aa93-cebdcc29dd8f" = true

# just eggs
"9e1a4364-09a6-4d94-990f-541a94a4c1e8" = true

# just peanuts
"8851c973-805e-4283-9e01-d0c0da0e4695" = true

# just strawberries
"2c8943cb-005e-435f-ae11-3e8fb558ea98" = true

# eggs and peanuts
"6fa95d26-044c-48a9-8a7b-9ee46ec32c5c" = true

# more than eggs but not peanuts
"19890e22-f63f-4c5c-a9fb-fb6eacddfe8e" = true

# lots of stuff
"4b68f470-067c-44e4-889f-c9fe28917d2f" = true

# everything
"0881b7c5-9efa-4530-91bd-68370d054bc7" = true

# no allergen score parts
"12ce86de-b347-42a0-ab7c-2e0570f0c65b" = true
31 changes: 31 additions & 0 deletions exercises/alphametics/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
[canonical-tests]

# puzzle with three letters
"e0c08b07-9028-4d5f-91e1-d178fead8e1a" = true

# solution must have unique value for each letter
"a504ee41-cb92-4ec2-9f11-c37e95ab3f25" = true

# leading zero solution is invalid
"4e3b81d2-be7b-4c5c-9a80-cd72bc6d465a" = true

# puzzle with two digits final carry
"8a3e3168-d1ee-4df7-94c7-b9c54845ac3a" = true

# puzzle with four letters
"a9630645-15bd-48b6-a61e-d85c4021cc09" = true

# puzzle with six letters
"3d905a86-5a52-4e4e-bf80-8951535791bd" = true

# puzzle with seven letters
"4febca56-e7b7-4789-97b9-530d09ba95f0" = true

# puzzle with eight letters
"12125a75-7284-4f9a-a5fa-191471e0d44f" = true

# puzzle with ten letters
"fb05955f-38dc-477a-a0b6-5ef78969fffa" = true

# puzzle with ten letters and 199 addends
"9a101e81-9216-472b-b458-b513a7adacf7" = true
45 changes: 45 additions & 0 deletions exercises/anagram/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
[canonical-tests]

# no matches
"dd40c4d2-3c8b-44e5-992a-f42b393ec373" = true

# detects two anagrams
"b3cca662-f50a-489e-ae10-ab8290a09bdc" = true

# does not detect anagram subsets
"a27558ee-9ba0-4552-96b1-ecf665b06556" = true

# detects anagram
"64cd4584-fc15-4781-b633-3d814c4941a4" = true

# detects three anagrams
"99c91beb-838f-4ccd-b123-935139917283" = true

# TODO: Add to this track.
# detects multiple anagrams with different case
# "78487770-e258-4e1f-a646-8ece10950d90" = true

# does not detect non-anagrams with identical checksum
"1d0ab8aa-362f-49b7-9902-3d0c668d557b" = true

# detects anagrams case-insensitively
"9e632c0b-c0b1-4804-8cc1-e295dea6d8a8" = true

# detects anagrams using case-insensitive subject
"b248e49f-0905-48d2-9c8d-bd02d8c3e392" = true

# detects anagrams using case-insensitive possible matches
"f367325c-78ec-411c-be76-e79047f4bd54" = true

# does not detect an anagram if the original word is repeated
"7cc195ad-e3c7-44ee-9fd2-d3c344806a2c" = true

# anagrams must use all letters exactly once
"9878a1c9-d6ea-4235-ae51-3ea2befd6842" = true

# words are not anagrams of themselves (case-insensitive)
"85757361-4535-45fd-ac0e-3810d40debc1" = true

# TODO: Add to this track.
# words other than themselves can be anagrams
# "a0705568-628c-4b55-9798-82e4acde51ca" = true
28 changes: 28 additions & 0 deletions exercises/armstrong-numbers/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[canonical-tests]

# Zero is an Armstrong number
"c1ed103c-258d-45b2-be73-d8c6d9580c7b" = true

# Single digit numbers are Armstrong numbers
"579e8f03-9659-4b85-a1a2-d64350f6b17a" = true

# There are no 2 digit Armstrong numbers
"2d6db9dc-5bf8-4976-a90b-b2c2b9feba60" = true

# Three digit number that is an Armstrong number
"509c087f-e327-4113-a7d2-26a4e9d18283" = true

# Three digit number that is not an Armstrong number
"7154547d-c2ce-468d-b214-4cb953b870cf" = true

# Four digit number that is an Armstrong number
"6bac5b7b-42e9-4ecb-a8b0-4832229aa103" = true

# Four digit number that is not an Armstrong number
"eed4b331-af80-45b5-a80b-19c9ea444b2e" = true

# Seven digit number that is an Armstrong number
"f971ced7-8d68-4758-aea1-d4194900b864" = true

# Seven digit number that is not an Armstrong number
"7ee45d52-5d35-4fbd-b6f1-5c8cd8a67f18" = true
43 changes: 43 additions & 0 deletions exercises/atbash-cipher/.meta/tests.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
[canonical-tests]

# encode yes
"2f47ebe1-eab9-4d6b-b3c6-627562a31c77" = true

# encode no
"b4ffe781-ea81-4b74-b268-cc58ba21c739" = true

# encode OMG
"10e48927-24ab-4c4d-9d3f-3067724ace00" = true

# encode spaces
"d59b8bc3-509a-4a9a-834c-6f501b98750b" = true

# encode mindblowingly
"31d44b11-81b7-4a94-8b43-4af6a2449429" = true

# encode numbers
"d503361a-1433-48c0-aae0-d41b5baa33ff" = true

# encode deep thought
"79c8a2d5-0772-42d4-b41b-531d0b5da926" = true

# encode all the letters
"9ca13d23-d32a-4967-a1fd-6100b8742bab" = true

# decode exercism
"bb50e087-7fdf-48e7-9223-284fe7e69851" = true

# decode a sentence
"ac021097-cd5d-4717-8907-b0814b9e292c" = true

# decode numbers
"18729de3-de74-49b8-b68c-025eaf77f851" = true

# decode all the letters
"0f30325f-f53b-415d-ad3e-a7a4f63de034" = true

# decode with too many spaces
"39640287-30c6-4c8c-9bac-9d613d1a5674" = true

# decode with no spaces
"b34edf13-34c0-49b5-aa21-0768928000d5" = true
Loading