Sha256: 7a7735db72cc98c5d48e49f769ece9e65264e70ef1703661efb83529532f12d5

Contents?: true

Size: 1.59 KB

Versions: 141

Compression:

Stored size: 1.59 KB

Contents

port module Main exposing (..)

import Test.Runner.Node exposing (run, TestProgram)
import Json.Encode exposing (Value)
import Test exposing (..)
import Expect
import Dict exposing (Dict)
import WordCount exposing (wordCount)


tests : Test
tests =
    describe "Word Count"
        [ test "count one word" <|
            \() ->
                Expect.equal [ ( "word", 1 ) ]
                    (wordCount "word" |> Dict.toList)
        , test "count one of each word" <|
            \() ->
                Expect.equal [ ( "each", 1 ), ( "of", 1 ), ( "one", 1 ) ]
                    (wordCount "one of each" |> Dict.toList)
        , test "multiple occurrences of a word" <|
            \() ->
                Expect.equal [ ( "blue", 1 ), ( "fish", 4 ), ( "one", 1 ), ( "red", 1 ), ( "two", 1 ) ]
                    (wordCount "one fish two fish red fish blue fish" |> Dict.toList)
        , test "ignore punctuation" <|
            \() ->
                Expect.equal [ ( "as", 1 ), ( "car", 1 ), ( "carpet", 1 ), ( "java", 1 ), ( "javascript", 1 ) ]
                    (wordCount "car : carpet as java : javascript!!&@$%^&" |> Dict.toList)
        , test "include numbers" <|
            \() ->
                Expect.equal [ ( "1", 1 ), ( "2", 1 ), ( "testing", 2 ) ]
                    (wordCount "testing, 1, 2 testing" |> Dict.toList)
        , test "normalize case" <|
            \() ->
                Expect.equal [ ( "go", 3 ), ( "stop", 2 ) ]
                    (wordCount "go Go GO Stop stop" |> Dict.toList)
        ]


main : TestProgram
main =
    run emit tests


port emit : ( String, Value ) -> Cmd msg

Version data entries

141 entries across 141 versions & 1 rubygems

Version Path
trackler-2.1.0.23 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.22 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.21 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.20 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.19 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.18 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.17 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.16 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.15 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.14 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.13 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.12 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.11 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.10 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.9 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.8 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.7 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.6 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.5 tracks/elm/exercises/word-count/Tests.elm
trackler-2.1.0.4 tracks/elm/exercises/word-count/Tests.elm