Sha256: 8fc36de926608c63012dce0bc6192a245a5f9e0338a14c8a47de2aad3e5c8a60

Contents?: true

Size: 1.58 KB

Versions: 38

Compression:

Stored size: 1.58 KB

Contents

port module Main exposing (..)

import Test.Runner.Node exposing (run)
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 : Program Value
main =
    run emit tests


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

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
trackler-2.0.5.1 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.5.0 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.4.0 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.9 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.8 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.7 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.6 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.5 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.4 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.3 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.2 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.1 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.3.0 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.2.0 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.1.2 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.1.1 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.1.0 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.0.10 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.0.9 tracks/elm/exercises/word-count/WordCountTests.elm
trackler-2.0.0.8 tracks/elm/exercises/word-count/WordCountTests.elm