Sha256: 4953b737da9d47a3d677aa68c037f3361cdbe8e7eb729533ceb97c1a5ed08d79

Contents?: true

Size: 1.5 KB

Versions: 33

Compression:

Stored size: 1.5 KB

Contents

module ETLTest

open Xunit
open FsUnit.Xunit
open ETL

[<Fact>]
let ``Transforms one value`` () =
    let old = [(1, ["A"])] |> Map.ofSeq
    let expected = [("a", 1)] |> Map.ofSeq
    transform old |> should equal expected

[<Fact(Skip = "Remove to run test")>]
let ``Transforms multiple values`` () =
    let old = [(1, ["A"; "E"; "I"; "O"; "U"])] |> Map.ofSeq
    let expected = [("a", 1); ("e", 1); ("i", 1); ("o", 1); ("u", 1)] |> Map.ofSeq
    transform old |> should equal expected

[<Fact(Skip = "Remove to run test")>]
let ``Transforms multiple keys`` () =
    let old = [(1, ["A"; "E"]); (2, ["D"; "G"])] |> Map.ofSeq
    let expected = [("a", 1); ("e", 1); ("d", 2); ("g", 2); ] |> Map.ofSeq
    transform old |> should equal expected

[<Fact(Skip = "Remove to run test")>]
let ``Transforms a full dataset`` () =
    let old = [(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"])] |> Map.ofSeq

    let expected = [("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 )] |> Map.ofSeq

    transform old |> should equal expected

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
trackler-2.2.1.55 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.54 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.53 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.52 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.51 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.50 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.49 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.48 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.47 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.46 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.45 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.44 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.43 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.42 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.41 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.40 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.39 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.38 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.37 tracks/fsharp/exercises/etl/EtlTest.fs
trackler-2.2.1.36 tracks/fsharp/exercises/etl/EtlTest.fs