mirror of
https://github.com/correl/elm.git
synced 2024-12-23 11:15:00 +00:00
98 lines
3.5 KiB
Elm
98 lines
3.5 KiB
Elm
|
module Tests exposing (..)
|
||
|
|
||
|
import Dict
|
||
|
import Etl
|
||
|
import Expect
|
||
|
import Test exposing (..)
|
||
|
|
||
|
|
||
|
tests : Test
|
||
|
tests =
|
||
|
describe "Etl.transform"
|
||
|
[ test "a single letter" <|
|
||
|
\() ->
|
||
|
Expect.equal
|
||
|
(Dict.fromList [ ( "a", 1 ) ])
|
||
|
(Etl.transform <|
|
||
|
Dict.fromList [ ( 1, [ "A" ] ) ]
|
||
|
)
|
||
|
, skip <|
|
||
|
test "single score with multiple letters" <|
|
||
|
\() ->
|
||
|
Expect.equal
|
||
|
(Dict.fromList
|
||
|
[ ( "a", 1 )
|
||
|
, ( "e", 1 )
|
||
|
, ( "i", 1 )
|
||
|
, ( "o", 1 )
|
||
|
, ( "u", 1 )
|
||
|
]
|
||
|
)
|
||
|
(Etl.transform <|
|
||
|
Dict.fromList
|
||
|
[ ( 1, [ "A", "E", "I", "O", "U" ] )
|
||
|
]
|
||
|
)
|
||
|
, skip <|
|
||
|
test "multiple scores with multiple letters" <|
|
||
|
\() ->
|
||
|
Expect.equal
|
||
|
(Dict.fromList
|
||
|
[ ( "a", 1 )
|
||
|
, ( "d", 2 )
|
||
|
, ( "e", 1 )
|
||
|
, ( "g", 2 )
|
||
|
]
|
||
|
)
|
||
|
(Etl.transform <|
|
||
|
Dict.fromList
|
||
|
[ ( 1, [ "A", "E" ] )
|
||
|
, ( 2, [ "D", "G" ] )
|
||
|
]
|
||
|
)
|
||
|
, skip <|
|
||
|
test "multiple scores with differing numbers of letters" <|
|
||
|
\() ->
|
||
|
Expect.equal
|
||
|
(Dict.fromList
|
||
|
[ ( "a", 1 )
|
||
|
, ( "b", 3 )
|
||
|
, ( "c", 3 )
|
||
|
, ( "d", 2 )
|
||
|
, ( "e", 1 )
|
||
|
, ( "f", 4 )
|
||
|
, ( "g", 2 )
|
||
|
, ( "h", 4 )
|
||
|
, ( "i", 1 )
|
||
|
, ( "j", 8 )
|
||
|
, ( "k", 5 )
|
||
|
, ( "l", 1 )
|
||
|
, ( "m", 3 )
|
||
|
, ( "n", 1 )
|
||
|
, ( "o", 1 )
|
||
|
, ( "p", 3 )
|
||
|
, ( "q", 10 )
|
||
|
, ( "r", 1 )
|
||
|
, ( "s", 1 )
|
||
|
, ( "t", 1 )
|
||
|
, ( "u", 1 )
|
||
|
, ( "v", 4 )
|
||
|
, ( "w", 4 )
|
||
|
, ( "x", 8 )
|
||
|
, ( "y", 4 )
|
||
|
, ( "z", 10 )
|
||
|
]
|
||
|
)
|
||
|
(Etl.transform <|
|
||
|
Dict.fromList
|
||
|
[ ( 1, [ "A", "E", "I", "O", "U", "L", "N", "R", "S", "T" ] )
|
||
|
, ( 2, [ "D", "G" ] )
|
||
|
, ( 3, [ "B", "C", "M", "P" ] )
|
||
|
, ( 4, [ "F", "H", "V", "W", "Y" ] )
|
||
|
, ( 5, [ "K" ] )
|
||
|
, ( 8, [ "J", "X" ] )
|
||
|
, ( 10, [ "Q", "Z" ] )
|
||
|
]
|
||
|
)
|
||
|
]
|