Skip to content

Commit ec5e222

Browse files
committed
update exercises that use removed modules from stdlib
1 parent abcb581 commit ec5e222

File tree

8 files changed

+81
-71
lines changed

8 files changed

+81
-71
lines changed

exercises/practice/dnd-character/.meta/example.gleam

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import gleam/float
22
import gleam/int
3-
import gleam/iterator
43
import gleam/list
4+
import gleam/yielder
55

66
pub type Character {
77
Character(
@@ -36,9 +36,9 @@ pub fn modifier(score: Int) -> Int {
3636
}
3737

3838
pub fn ability() -> Int {
39-
iterator.repeatedly(roll)
40-
|> iterator.take(4)
41-
|> iterator.to_list()
39+
yielder.repeatedly(roll)
40+
|> yielder.take(4)
41+
|> yielder.to_list()
4242
|> list.sort(int.compare)
4343
|> list.drop(1)
4444
|> int.sum()

exercises/practice/dnd-character/gleam.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@ version = "0.1.0"
44
[dependencies]
55
gleam_bitwise = "~> 1.2"
66
gleam_otp = "~> 0.7 or ~> 1.0"
7-
gleam_stdlib = "~> 0.32 or ~> 1.0"
7+
gleam_stdlib = ">= 0.32.0 and <= 0.47.0"
88
simplifile = "~> 1.0"
99
gleam_erlang = ">= 0.25.0 and < 1.0.0"
10+
gleam_yielder = ">= 1.1.0 and < 2.0.0"
1011

1112
[dev-dependencies]
12-
exercism_test_runner = "~> 1.4"
13+
exercism_test_runner = "~> 1.8"

exercises/practice/dnd-character/manifest.toml

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,28 @@
44
packages = [
55
{ name = "argv", version = "1.0.2", build_tools = ["gleam"], requirements = [], otp_app = "argv", source = "hex", outer_checksum = "BA1FF0929525DEBA1CE67256E5ADF77A7CDDFE729E3E3F57A5BDCAA031DED09D" },
66
{ name = "exercism_test_runner", version = "1.8.0", build_tools = ["gleam"], requirements = ["argv", "gap", "glance", "gleam_community_ansi", "gleam_erlang", "gleam_json", "gleam_stdlib", "simplifile"], otp_app = "exercism_test_runner", source = "hex", outer_checksum = "B944D89A9D049897DF28C63D595D89CB54D8C407D06EFFCE4CDA8C3EC1C9F51E" },
7-
{ name = "filepath", version = "1.0.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "EFB6FF65C98B2A16378ABC3EE2B14124168C0CE5201553DE652E2644DCFDB594" },
7+
{ name = "filepath", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "67A6D15FB39EEB69DD31F8C145BB5A421790581BD6AA14B33D64D5A55DBD6587" },
88
{ name = "gap", version = "1.1.3", build_tools = ["gleam"], requirements = ["gleam_community_ansi", "gleam_stdlib"], otp_app = "gap", source = "hex", outer_checksum = "6EF5E3B523FDFBC317E9EA28D5163EE04744A97C007106F90207569789612291" },
9-
{ name = "glance", version = "1.0.0", build_tools = ["gleam"], requirements = ["gleam_stdlib", "glexer"], otp_app = "glance", source = "hex", outer_checksum = "1510D4A03C28880E62974389E5BF1A5A185036BA07392F1D769620706A9E042F" },
9+
{ name = "glance", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib", "glexer"], otp_app = "glance", source = "hex", outer_checksum = "E155BA1A787FD11827048355021C0390D2FE9A518485526F631A9D472858CC6D" },
1010
{ name = "gleam_bitwise", version = "1.3.1", build_tools = ["gleam"], requirements = [], otp_app = "gleam_bitwise", source = "hex", outer_checksum = "B36E1D3188D7F594C7FD4F43D0D2CE17561DE896202017548578B16FE1FE9EFC" },
11-
{ name = "gleam_community_ansi", version = "1.4.1", build_tools = ["gleam"], requirements = ["gleam_community_colour", "gleam_stdlib"], otp_app = "gleam_community_ansi", source = "hex", outer_checksum = "4CD513FC62523053E62ED7BAC2F36136EC17D6A8942728250A9A00A15E340E4B" },
12-
{ name = "gleam_community_colour", version = "1.4.0", build_tools = ["gleam"], requirements = ["gleam_json", "gleam_stdlib"], otp_app = "gleam_community_colour", source = "hex", outer_checksum = "795964217EBEDB3DA656F5EB8F67D7AD22872EB95182042D3E7AFEF32D3FD2FE" },
13-
{ name = "gleam_erlang", version = "0.27.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "DE468F676D71B313C6C8C5334425CFCF827837333F8AB47B64D8A6D7AA40185D" },
11+
{ name = "gleam_community_ansi", version = "1.4.2", build_tools = ["gleam"], requirements = ["gleam_community_colour", "gleam_regexp", "gleam_stdlib"], otp_app = "gleam_community_ansi", source = "hex", outer_checksum = "479DEDC748D08B310C9FEB9C4CBEC46B95C874F7F4F2844304D6D20CA78A8BB5" },
12+
{ name = "gleam_community_colour", version = "1.4.1", build_tools = ["gleam"], requirements = ["gleam_json", "gleam_stdlib"], otp_app = "gleam_community_colour", source = "hex", outer_checksum = "386CB9B01B33371538672EEA8A6375A0A0ADEF41F17C86DDCB81C92AD00DA610" },
13+
{ name = "gleam_erlang", version = "0.33.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "A1D26B80F01901B59AABEE3475DD4C18D27D58FA5C897D922FCB9B099749C064" },
1414
{ name = "gleam_json", version = "1.0.1", build_tools = ["gleam"], requirements = ["gleam_stdlib", "thoas"], otp_app = "gleam_json", source = "hex", outer_checksum = "9063D14D25406326C0255BDA0021541E797D8A7A12573D849462CAFED459F6EB" },
15-
{ name = "gleam_otp", version = "0.12.1", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "BFACC1513410DF5A1617169A9CD7EA334973AC71D860A17574BA7B2EADD89A6F" },
16-
{ name = "gleam_stdlib", version = "0.40.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "86606B75A600BBD05E539EB59FABC6E307EEEA7B1E5865AFB6D980A93BCB2181" },
17-
{ name = "glexer", version = "1.0.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "glexer", source = "hex", outer_checksum = "BD477AD657C2B637FEF75F2405FAEFFA533F277A74EF1A5E17B55B1178C228FB" },
15+
{ name = "gleam_otp", version = "0.16.1", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "50DA1539FC8E8FA09924EB36A67A2BBB0AD6B27BCDED5A7EF627057CF69D035E" },
16+
{ name = "gleam_regexp", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_regexp", source = "hex", outer_checksum = "7F5E0C0BBEB3C58E57C9CB05FA9002F970C85AD4A63BA1E55CBCB35C15809179" },
17+
{ name = "gleam_stdlib", version = "0.47.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "3B22D46743C46498C8355365243327AC731ECD3959216344FA9CF9AD348620AC" },
18+
{ name = "gleam_yielder", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_yielder", source = "hex", outer_checksum = "8E4E4ECFA7982859F430C57F549200C7749823C106759F4A19A78AEA6687717A" },
19+
{ name = "glexer", version = "2.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "glexer", source = "hex", outer_checksum = "F74FB4F78C3C1E158DF15A7226F33A662672F58EEF1DFE6593B7FCDA38B0A0EB" },
1820
{ name = "simplifile", version = "1.7.0", build_tools = ["gleam"], requirements = ["filepath", "gleam_stdlib"], otp_app = "simplifile", source = "hex", outer_checksum = "1D5DFA3A2F9319EC85825F6ED88B8E449F381B0D55A62F5E61424E748E7DDEB0" },
1921
{ name = "thoas", version = "1.2.1", build_tools = ["rebar3"], requirements = [], otp_app = "thoas", source = "hex", outer_checksum = "E38697EDFFD6E91BD12CEA41B155115282630075C2A727E7A6B2947F5408B86A" },
2022
]
2123

2224
[requirements]
23-
exercism_test_runner = { version = "~> 1.4" }
25+
exercism_test_runner = { version = "~> 1.8" }
2426
gleam_bitwise = { version = "~> 1.2" }
2527
gleam_erlang = { version = ">= 0.25.0 and < 1.0.0" }
2628
gleam_otp = { version = "~> 0.7 or ~> 1.0" }
27-
gleam_stdlib = { version = "~> 0.32 or ~> 1.0" }
29+
gleam_stdlib = { version = ">= 0.32.0 and <= 0.47.0" }
30+
gleam_yielder = { version = ">= 1.1.0 and < 2.0.0" }
2831
simplifile = { version = "~> 1.0" }

exercises/practice/dnd-character/test/dnd_character_test.gleam

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import dnd_character
22
import exercism/should
33
import exercism/test_runner
4-
import gleam/iterator
4+
import gleam/yielder
55

66
pub fn main() {
77
test_runner.main()
@@ -88,72 +88,72 @@ pub fn ability_modifier_ability_modifier_for_score_18_is_4_test() {
8888
}
8989

9090
pub fn random_ability_is_within_range_test() {
91-
iterator.repeatedly(dnd_character.ability)
92-
|> iterator.take(100)
93-
|> iterator.all(fn(ability) {
91+
yielder.repeatedly(dnd_character.ability)
92+
|> yielder.take(100)
93+
|> yielder.all(fn(ability) {
9494
let assert True = ability >= 3
9595
let assert True = ability <= 18
9696
})
9797
}
9898

9999
pub fn random_character_charisma_is_within_range_test() {
100-
iterator.repeatedly(dnd_character.generate_character)
101-
|> iterator.take(100)
102-
|> iterator.all(fn(character) {
100+
yielder.repeatedly(dnd_character.generate_character)
101+
|> yielder.take(100)
102+
|> yielder.all(fn(character) {
103103
let assert True = character.charisma >= 3
104104
let assert True = character.charisma <= 18
105105
})
106106
}
107107

108108
pub fn random_character_constitution_is_within_range_test() {
109-
iterator.repeatedly(dnd_character.generate_character)
110-
|> iterator.take(100)
111-
|> iterator.all(fn(character) {
109+
yielder.repeatedly(dnd_character.generate_character)
110+
|> yielder.take(100)
111+
|> yielder.all(fn(character) {
112112
let assert True = character.constitution >= 3
113113
let assert True = character.constitution <= 18
114114
})
115115
}
116116

117117
pub fn random_character_dexterity_is_within_range_test() {
118-
iterator.repeatedly(dnd_character.generate_character)
119-
|> iterator.take(100)
120-
|> iterator.all(fn(character) {
118+
yielder.repeatedly(dnd_character.generate_character)
119+
|> yielder.take(100)
120+
|> yielder.all(fn(character) {
121121
let assert True = character.dexterity >= 3
122122
let assert True = character.dexterity <= 18
123123
})
124124
}
125125

126126
pub fn random_character_intelligence_is_within_range_test() {
127-
iterator.repeatedly(dnd_character.generate_character)
128-
|> iterator.take(100)
129-
|> iterator.all(fn(character) {
127+
yielder.repeatedly(dnd_character.generate_character)
128+
|> yielder.take(100)
129+
|> yielder.all(fn(character) {
130130
let assert True = character.intelligence >= 3
131131
let assert True = character.intelligence <= 18
132132
})
133133
}
134134

135135
pub fn random_character_strength_is_within_range_test() {
136-
iterator.repeatedly(dnd_character.generate_character)
137-
|> iterator.take(100)
138-
|> iterator.all(fn(character) {
136+
yielder.repeatedly(dnd_character.generate_character)
137+
|> yielder.take(100)
138+
|> yielder.all(fn(character) {
139139
let assert True = character.strength >= 3
140140
let assert True = character.strength <= 18
141141
})
142142
}
143143

144144
pub fn random_character_wisdom_is_within_range_test() {
145-
iterator.repeatedly(dnd_character.generate_character)
146-
|> iterator.take(100)
147-
|> iterator.all(fn(character) {
145+
yielder.repeatedly(dnd_character.generate_character)
146+
|> yielder.take(100)
147+
|> yielder.all(fn(character) {
148148
let assert True = character.wisdom >= 3
149149
let assert True = character.wisdom <= 18
150150
})
151151
}
152152

153153
pub fn random_character_hitpoints_is_calculated_correctly_test() {
154-
iterator.repeatedly(dnd_character.generate_character)
155-
|> iterator.take(100)
156-
|> iterator.all(fn(character) {
154+
yielder.repeatedly(dnd_character.generate_character)
155+
|> yielder.take(100)
156+
|> yielder.all(fn(character) {
157157
let assert True =
158158
10 + dnd_character.modifier(character.constitution) == character.hitpoints
159159
})

exercises/practice/simple-cipher/.meta/example.gleam

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import gleam/int
2-
import gleam/iterator
32
import gleam/result
43
import gleam/string
4+
import gleam/yielder
55

66
pub fn encode(plaintext plaintext: String, key key: String) -> String {
77
shift(input: plaintext, key: key, by: int.add)
@@ -12,10 +12,10 @@ pub fn decode(ciphertext ciphertext: String, key key: String) -> String {
1212
}
1313

1414
pub fn generate_key() -> String {
15-
iterator.repeatedly(fn() { int.random(alphabet_length) })
16-
|> iterator.map(fn(shift) { string.utf_codepoint(min_int_code_point + shift) })
17-
|> iterator.take(up_to: 100)
18-
|> iterator.to_list()
15+
yielder.repeatedly(fn() { int.random(alphabet_length) })
16+
|> yielder.map(fn(shift) { string.utf_codepoint(min_int_code_point + shift) })
17+
|> yielder.take(up_to: 100)
18+
|> yielder.to_list()
1919
|> result.values()
2020
|> string.from_utf_codepoints()
2121
}
@@ -27,15 +27,15 @@ fn shift(
2727
) -> String {
2828
input
2929
|> string.to_utf_codepoints()
30-
|> iterator.from_list()
31-
|> iterator.zip(
30+
|> yielder.from_list()
31+
|> yielder.zip(
3232
key
3333
|> string.to_utf_codepoints()
34-
|> iterator.from_list()
35-
|> iterator.cycle(),
34+
|> yielder.from_list()
35+
|> yielder.cycle(),
3636
)
37-
|> iterator.map(fn(pair) { shift_letter(pair.0, pair.1, op) })
38-
|> iterator.to_list()
37+
|> yielder.map(fn(pair) { shift_letter(pair.0, pair.1, op) })
38+
|> yielder.to_list()
3939
|> string.from_utf_codepoints()
4040
}
4141

exercises/practice/simple-cipher/gleam.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,11 @@ version = "0.1.0"
44
[dependencies]
55
gleam_bitwise = "~> 1.2"
66
gleam_otp = "~> 0.7 or ~> 1.0"
7-
gleam_stdlib = "~> 0.32 or ~> 1.0"
7+
gleam_stdlib = ">= 0.45.0 and <= 0.47.0"
88
simplifile = "~> 1.0"
99
gleam_erlang = ">= 0.25.0 and < 1.0.0"
10+
gleam_yielder = ">= 1.1.0 and < 2.0.0"
11+
gleam_regexp = ">= 1.1.0 and < 2.0.0"
1012

1113
[dev-dependencies]
12-
exercism_test_runner = "~> 1.4"
14+
exercism_test_runner = "~> 1.8"

exercises/practice/simple-cipher/manifest.toml

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,29 @@
44
packages = [
55
{ name = "argv", version = "1.0.2", build_tools = ["gleam"], requirements = [], otp_app = "argv", source = "hex", outer_checksum = "BA1FF0929525DEBA1CE67256E5ADF77A7CDDFE729E3E3F57A5BDCAA031DED09D" },
66
{ name = "exercism_test_runner", version = "1.8.0", build_tools = ["gleam"], requirements = ["argv", "gap", "glance", "gleam_community_ansi", "gleam_erlang", "gleam_json", "gleam_stdlib", "simplifile"], otp_app = "exercism_test_runner", source = "hex", outer_checksum = "B944D89A9D049897DF28C63D595D89CB54D8C407D06EFFCE4CDA8C3EC1C9F51E" },
7-
{ name = "filepath", version = "1.0.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "EFB6FF65C98B2A16378ABC3EE2B14124168C0CE5201553DE652E2644DCFDB594" },
7+
{ name = "filepath", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "filepath", source = "hex", outer_checksum = "67A6D15FB39EEB69DD31F8C145BB5A421790581BD6AA14B33D64D5A55DBD6587" },
88
{ name = "gap", version = "1.1.3", build_tools = ["gleam"], requirements = ["gleam_community_ansi", "gleam_stdlib"], otp_app = "gap", source = "hex", outer_checksum = "6EF5E3B523FDFBC317E9EA28D5163EE04744A97C007106F90207569789612291" },
9-
{ name = "glance", version = "1.0.0", build_tools = ["gleam"], requirements = ["gleam_stdlib", "glexer"], otp_app = "glance", source = "hex", outer_checksum = "1510D4A03C28880E62974389E5BF1A5A185036BA07392F1D769620706A9E042F" },
9+
{ name = "glance", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib", "glexer"], otp_app = "glance", source = "hex", outer_checksum = "E155BA1A787FD11827048355021C0390D2FE9A518485526F631A9D472858CC6D" },
1010
{ name = "gleam_bitwise", version = "1.3.1", build_tools = ["gleam"], requirements = [], otp_app = "gleam_bitwise", source = "hex", outer_checksum = "B36E1D3188D7F594C7FD4F43D0D2CE17561DE896202017548578B16FE1FE9EFC" },
11-
{ name = "gleam_community_ansi", version = "1.4.1", build_tools = ["gleam"], requirements = ["gleam_community_colour", "gleam_stdlib"], otp_app = "gleam_community_ansi", source = "hex", outer_checksum = "4CD513FC62523053E62ED7BAC2F36136EC17D6A8942728250A9A00A15E340E4B" },
12-
{ name = "gleam_community_colour", version = "1.4.0", build_tools = ["gleam"], requirements = ["gleam_json", "gleam_stdlib"], otp_app = "gleam_community_colour", source = "hex", outer_checksum = "795964217EBEDB3DA656F5EB8F67D7AD22872EB95182042D3E7AFEF32D3FD2FE" },
13-
{ name = "gleam_erlang", version = "0.27.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "DE468F676D71B313C6C8C5334425CFCF827837333F8AB47B64D8A6D7AA40185D" },
11+
{ name = "gleam_community_ansi", version = "1.4.2", build_tools = ["gleam"], requirements = ["gleam_community_colour", "gleam_regexp", "gleam_stdlib"], otp_app = "gleam_community_ansi", source = "hex", outer_checksum = "479DEDC748D08B310C9FEB9C4CBEC46B95C874F7F4F2844304D6D20CA78A8BB5" },
12+
{ name = "gleam_community_colour", version = "1.4.1", build_tools = ["gleam"], requirements = ["gleam_json", "gleam_stdlib"], otp_app = "gleam_community_colour", source = "hex", outer_checksum = "386CB9B01B33371538672EEA8A6375A0A0ADEF41F17C86DDCB81C92AD00DA610" },
13+
{ name = "gleam_erlang", version = "0.33.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "A1D26B80F01901B59AABEE3475DD4C18D27D58FA5C897D922FCB9B099749C064" },
1414
{ name = "gleam_json", version = "1.0.1", build_tools = ["gleam"], requirements = ["gleam_stdlib", "thoas"], otp_app = "gleam_json", source = "hex", outer_checksum = "9063D14D25406326C0255BDA0021541E797D8A7A12573D849462CAFED459F6EB" },
15-
{ name = "gleam_otp", version = "0.12.1", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "BFACC1513410DF5A1617169A9CD7EA334973AC71D860A17574BA7B2EADD89A6F" },
16-
{ name = "gleam_stdlib", version = "0.40.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "86606B75A600BBD05E539EB59FABC6E307EEEA7B1E5865AFB6D980A93BCB2181" },
17-
{ name = "glexer", version = "1.0.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "glexer", source = "hex", outer_checksum = "BD477AD657C2B637FEF75F2405FAEFFA533F277A74EF1A5E17B55B1178C228FB" },
15+
{ name = "gleam_otp", version = "0.16.1", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "50DA1539FC8E8FA09924EB36A67A2BBB0AD6B27BCDED5A7EF627057CF69D035E" },
16+
{ name = "gleam_regexp", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_regexp", source = "hex", outer_checksum = "7F5E0C0BBEB3C58E57C9CB05FA9002F970C85AD4A63BA1E55CBCB35C15809179" },
17+
{ name = "gleam_stdlib", version = "0.47.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "3B22D46743C46498C8355365243327AC731ECD3959216344FA9CF9AD348620AC" },
18+
{ name = "gleam_yielder", version = "1.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_yielder", source = "hex", outer_checksum = "8E4E4ECFA7982859F430C57F549200C7749823C106759F4A19A78AEA6687717A" },
19+
{ name = "glexer", version = "2.1.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "glexer", source = "hex", outer_checksum = "F74FB4F78C3C1E158DF15A7226F33A662672F58EEF1DFE6593B7FCDA38B0A0EB" },
1820
{ name = "simplifile", version = "1.7.0", build_tools = ["gleam"], requirements = ["filepath", "gleam_stdlib"], otp_app = "simplifile", source = "hex", outer_checksum = "1D5DFA3A2F9319EC85825F6ED88B8E449F381B0D55A62F5E61424E748E7DDEB0" },
1921
{ name = "thoas", version = "1.2.1", build_tools = ["rebar3"], requirements = [], otp_app = "thoas", source = "hex", outer_checksum = "E38697EDFFD6E91BD12CEA41B155115282630075C2A727E7A6B2947F5408B86A" },
2022
]
2123

2224
[requirements]
23-
exercism_test_runner = { version = "~> 1.4" }
25+
exercism_test_runner = { version = "~> 1.8" }
2426
gleam_bitwise = { version = "~> 1.2" }
2527
gleam_erlang = { version = ">= 0.25.0 and < 1.0.0" }
2628
gleam_otp = { version = "~> 0.7 or ~> 1.0" }
27-
gleam_stdlib = { version = "~> 0.32 or ~> 1.0" }
29+
gleam_regexp = { version = ">= 1.1.0 and < 2.0.0" }
30+
gleam_stdlib = { version = ">= 0.45.0 and <= 0.47.0" }
31+
gleam_yielder = { version = ">= 1.1.0 and < 2.0.0" }
2832
simplifile = { version = "~> 1.0" }

exercises/practice/simple-cipher/test/simple_cipher_test.gleam

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import exercism/should
22
import exercism/test_runner
3-
import gleam/iterator
4-
import gleam/regex
3+
import gleam/regexp
54
import gleam/string
5+
import gleam/yielder
66
import simple_cipher
77

88
pub fn main() {
@@ -51,12 +51,12 @@ pub fn substitution_cipher_can_decode_messages_longer_than_the_key_test() {
5151
}
5252

5353
pub fn random_key_cipher_key_is_made_only_of_lowercase_letters_test() {
54-
let assert Ok(re) = regex.from_string("^[a-z]+$")
54+
let assert Ok(re) = regexp.from_string("^[a-z]+$")
5555

56-
iterator.repeatedly(simple_cipher.generate_key)
57-
|> iterator.take(100)
58-
|> iterator.all(fn(key) {
59-
let assert True = regex.check(re, key)
56+
yielder.repeatedly(simple_cipher.generate_key)
57+
|> yielder.take(100)
58+
|> yielder.all(fn(key) {
59+
let assert True = regexp.check(re, key)
6060
})
6161
}
6262

0 commit comments

Comments
 (0)