Skip to content

Commit 80e8511

Browse files
Update tests.toml files to latest spec (exercism#1893)
Track maintainers found that they wanted to add comments to the tests.toml file to e.g. indicate _why_ a test was not included. Unfortunately, running configlet sync would re-generate the entire file so any manually added comments were lost. In this commit we're updating the format of tests.toml files to support adding comments. We do this by creating a separate table for each test case which has `description` and `include` fields. Tracks are then free to add additional fields, like a `comment` field, but also anything they feel might be useful to them. For more information, see this discussion: exercism/configlet#186
1 parent f2f4936 commit 80e8511

107 files changed

Lines changed: 5010 additions & 3233 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 30 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,39 @@
1-
[canonical-tests]
1+
# This is an auto-generated file. Regular comments will be removed when this
2+
# file is regenerated. Regenerating will not touch any manually added keys,
3+
# so comments can be added in a "comment" key.
24

3-
# basic
4-
"1e22cceb-c5e4-4562-9afe-aef07ad1eaf4" = true
5+
[1e22cceb-c5e4-4562-9afe-aef07ad1eaf4]
6+
description = "basic"
7+
include = true
58

6-
# lowercase words
7-
"79ae3889-a5c0-4b01-baf0-232d31180c08" = true
9+
[79ae3889-a5c0-4b01-baf0-232d31180c08]
10+
description = "lowercase words"
11+
include = true
812

9-
# punctuation
10-
"ec7000a7-3931-4a17-890e-33ca2073a548" = true
13+
[ec7000a7-3931-4a17-890e-33ca2073a548]
14+
description = "punctuation"
15+
include = true
1116

12-
# all caps word
13-
"32dd261c-0c92-469a-9c5c-b192e94a63b0" = true
17+
[32dd261c-0c92-469a-9c5c-b192e94a63b0]
18+
description = "all caps word"
19+
include = true
1420

15-
# punctuation without whitespace
16-
"ae2ac9fa-a606-4d05-8244-3bcc4659c1d4" = true
21+
[ae2ac9fa-a606-4d05-8244-3bcc4659c1d4]
22+
description = "punctuation without whitespace"
23+
include = true
1724

18-
# very long abbreviation
19-
"0e4b1e7c-1a6d-48fb-81a7-bf65eb9e69f9" = true
25+
[0e4b1e7c-1a6d-48fb-81a7-bf65eb9e69f9]
26+
description = "very long abbreviation"
27+
include = true
2028

21-
# consecutive delimiters
22-
"6a078f49-c68d-4b7b-89af-33a1a98c28cc" = true
29+
[6a078f49-c68d-4b7b-89af-33a1a98c28cc]
30+
description = "consecutive delimiters"
31+
include = true
2332

24-
# apostrophes
25-
"5118b4b1-4572-434c-8d57-5b762e57973e" = true
33+
[5118b4b1-4572-434c-8d57-5b762e57973e]
34+
description = "apostrophes"
35+
include = true
2636

27-
# underscore emphasis
28-
"adc12eab-ec2d-414f-b48c-66a4fc06cdef" = true
37+
[adc12eab-ec2d-414f-b48c-66a4fc06cdef]
38+
description = "underscore emphasis"
39+
include = true
Lines changed: 51 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,67 @@
1-
[canonical-tests]
1+
# This is an auto-generated file. Regular comments will be removed when this
2+
# file is regenerated. Regenerating will not touch any manually added keys,
3+
# so comments can be added in a "comment" key.
24

3-
# encode yes
4-
"2ee1d9af-1c43-416c-b41b-cefd7d4d2b2a" = true
5+
[2ee1d9af-1c43-416c-b41b-cefd7d4d2b2a]
6+
description = "encode yes"
7+
include = true
58

6-
# encode no
7-
"785bade9-e98b-4d4f-a5b0-087ba3d7de4b" = true
9+
[785bade9-e98b-4d4f-a5b0-087ba3d7de4b]
10+
description = "encode no"
11+
include = true
812

9-
# encode OMG
10-
"2854851c-48fb-40d8-9bf6-8f192ed25054" = true
13+
[2854851c-48fb-40d8-9bf6-8f192ed25054]
14+
description = "encode OMG"
15+
include = true
1116

12-
# encode O M G
13-
"bc0c1244-b544-49dd-9777-13a770be1bad" = true
17+
[bc0c1244-b544-49dd-9777-13a770be1bad]
18+
description = "encode O M G"
19+
include = true
1420

15-
# encode mindblowingly
16-
"381a1a20-b74a-46ce-9277-3778625c9e27" = true
21+
[381a1a20-b74a-46ce-9277-3778625c9e27]
22+
description = "encode mindblowingly"
23+
include = true
1724

18-
# encode numbers
19-
"6686f4e2-753b-47d4-9715-876fdc59029d" = true
25+
[6686f4e2-753b-47d4-9715-876fdc59029d]
26+
description = "encode numbers"
27+
include = true
2028

21-
# encode deep thought
22-
"ae23d5bd-30a8-44b6-afbe-23c8c0c7faa3" = true
29+
[ae23d5bd-30a8-44b6-afbe-23c8c0c7faa3]
30+
description = "encode deep thought"
31+
include = true
2332

24-
# encode all the letters
25-
"c93a8a4d-426c-42ef-9610-76ded6f7ef57" = true
33+
[c93a8a4d-426c-42ef-9610-76ded6f7ef57]
34+
description = "encode all the letters"
35+
include = true
2636

27-
# encode with a not coprime to m
28-
"0673638a-4375-40bd-871c-fb6a2c28effb" = true
37+
[0673638a-4375-40bd-871c-fb6a2c28effb]
38+
description = "encode with a not coprime to m"
39+
include = true
2940

30-
# decode exercism
31-
"3f0ac7e2-ec0e-4a79-949e-95e414953438" = true
41+
[3f0ac7e2-ec0e-4a79-949e-95e414953438]
42+
description = "decode exercism"
43+
include = true
3244

33-
# decode a sentence
34-
"241ee64d-5a47-4092-a5d7-7939d259e077" = true
45+
[241ee64d-5a47-4092-a5d7-7939d259e077]
46+
description = "decode a sentence"
47+
include = true
3548

36-
# decode numbers
37-
"33fb16a1-765a-496f-907f-12e644837f5e" = true
49+
[33fb16a1-765a-496f-907f-12e644837f5e]
50+
description = "decode numbers"
51+
include = true
3852

39-
# decode all the letters
40-
"20bc9dce-c5ec-4db6-a3f1-845c776bcbf7" = true
53+
[20bc9dce-c5ec-4db6-a3f1-845c776bcbf7]
54+
description = "decode all the letters"
55+
include = true
4156

42-
# decode with no spaces in input
43-
"623e78c0-922d-49c5-8702-227a3e8eaf81" = true
57+
[623e78c0-922d-49c5-8702-227a3e8eaf81]
58+
description = "decode with no spaces in input"
59+
include = true
4460

45-
# decode with too many spaces
46-
"58fd5c2a-1fd9-4563-a80a-71cff200f26f" = true
61+
[58fd5c2a-1fd9-4563-a80a-71cff200f26f]
62+
description = "decode with too many spaces"
63+
include = true
4764

48-
# decode with a not coprime to m
49-
"b004626f-c186-4af9-a3f4-58f74cdb86d5" = true
65+
[b004626f-c186-4af9-a3f4-58f74cdb86d5]
66+
description = "decode with a not coprime to m"
67+
include = true
Lines changed: 66 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,87 @@
1-
[canonical-tests]
1+
# This is an auto-generated file. Regular comments will be removed when this
2+
# file is regenerated. Regenerating will not touch any manually added keys,
3+
# so comments can be added in a "comment" key.
24

3-
# single bit one to decimal
4-
"5ce422f9-7a4b-4f44-ad29-49c67cb32d2c" = true
5+
[5ce422f9-7a4b-4f44-ad29-49c67cb32d2c]
6+
description = "single bit one to decimal"
7+
include = true
58

6-
# binary to single decimal
7-
"0cc3fea8-bb79-46ac-a2ab-5a2c93051033" = true
9+
[0cc3fea8-bb79-46ac-a2ab-5a2c93051033]
10+
description = "binary to single decimal"
11+
include = true
812

9-
# single decimal to binary
10-
"f12db0f9-0d3d-42c2-b3ba-e38cb375a2b8" = true
13+
[f12db0f9-0d3d-42c2-b3ba-e38cb375a2b8]
14+
description = "single decimal to binary"
15+
include = true
1116

12-
# binary to multiple decimal
13-
"2c45cf54-6da3-4748-9733-5a3c765d925b" = true
17+
[2c45cf54-6da3-4748-9733-5a3c765d925b]
18+
description = "binary to multiple decimal"
19+
include = true
1420

15-
# decimal to binary
16-
"65ddb8b4-8899-4fcc-8618-181b2cf0002d" = true
21+
[65ddb8b4-8899-4fcc-8618-181b2cf0002d]
22+
description = "decimal to binary"
23+
include = true
1724

18-
# trinary to hexadecimal
19-
"8d418419-02a7-4824-8b7a-352d33c6987e" = true
25+
[8d418419-02a7-4824-8b7a-352d33c6987e]
26+
description = "trinary to hexadecimal"
27+
include = true
2028

21-
# hexadecimal to trinary
22-
"d3901c80-8190-41b9-bd86-38d988efa956" = true
29+
[d3901c80-8190-41b9-bd86-38d988efa956]
30+
description = "hexadecimal to trinary"
31+
include = true
2332

24-
# 15-bit integer
25-
"5d42f85e-21ad-41bd-b9be-a3e8e4258bbf" = true
33+
[5d42f85e-21ad-41bd-b9be-a3e8e4258bbf]
34+
description = "15-bit integer"
35+
include = true
2636

27-
# empty list
28-
"d68788f7-66dd-43f8-a543-f15b6d233f83" = true
37+
[d68788f7-66dd-43f8-a543-f15b6d233f83]
38+
description = "empty list"
39+
include = true
2940

30-
# single zero
31-
"5e27e8da-5862-4c5f-b2a9-26c0382b6be7" = true
41+
[5e27e8da-5862-4c5f-b2a9-26c0382b6be7]
42+
description = "single zero"
43+
include = true
3244

33-
# multiple zeros
34-
"2e1c2573-77e4-4b9c-8517-6c56c5bcfdf2" = true
45+
[2e1c2573-77e4-4b9c-8517-6c56c5bcfdf2]
46+
description = "multiple zeros"
47+
include = true
3548

36-
# leading zeros
37-
"3530cd9f-8d6d-43f5-bc6e-b30b1db9629b" = true
49+
[3530cd9f-8d6d-43f5-bc6e-b30b1db9629b]
50+
description = "leading zeros"
51+
include = true
3852

39-
# input base is one
40-
"a6b476a1-1901-4f2a-92c4-4d91917ae023" = true
53+
[a6b476a1-1901-4f2a-92c4-4d91917ae023]
54+
description = "input base is one"
55+
include = true
4156

42-
# input base is zero
43-
"e21a693a-7a69-450b-b393-27415c26a016" = true
57+
[e21a693a-7a69-450b-b393-27415c26a016]
58+
description = "input base is zero"
59+
include = true
4460

45-
# input base is negative
46-
"54a23be5-d99e-41cc-88e0-a650ffe5fcc2" = true
61+
[54a23be5-d99e-41cc-88e0-a650ffe5fcc2]
62+
description = "input base is negative"
63+
include = true
4764

48-
# negative digit
49-
"9eccf60c-dcc9-407b-95d8-c37b8be56bb6" = true
65+
[9eccf60c-dcc9-407b-95d8-c37b8be56bb6]
66+
description = "negative digit"
67+
include = true
5068

51-
# invalid positive digit
52-
"232fa4a5-e761-4939-ba0c-ed046cd0676a" = true
69+
[232fa4a5-e761-4939-ba0c-ed046cd0676a]
70+
description = "invalid positive digit"
71+
include = true
5372

54-
# output base is one
55-
"14238f95-45da-41dc-95ce-18f860b30ad3" = true
73+
[14238f95-45da-41dc-95ce-18f860b30ad3]
74+
description = "output base is one"
75+
include = true
5676

57-
# output base is zero
58-
"73dac367-da5c-4a37-95fe-c87fad0a4047" = true
77+
[73dac367-da5c-4a37-95fe-c87fad0a4047]
78+
description = "output base is zero"
79+
include = true
5980

60-
# output base is negative
61-
"13f81f42-ff53-4e24-89d9-37603a48ebd9" = true
81+
[13f81f42-ff53-4e24-89d9-37603a48ebd9]
82+
description = "output base is negative"
83+
include = true
6284

63-
# both bases are negative
64-
"0e6c895d-8a5d-4868-a345-309d094cfe8d" = true
85+
[0e6c895d-8a5d-4868-a345-309d094cfe8d]
86+
description = "both bases are negative"
87+
include = true

0 commit comments

Comments
 (0)