2016-08-17 11:14:17 +00:00
|
|
|
port module Main exposing (..)
|
2016-03-17 01:36:38 +00:00
|
|
|
|
2016-08-17 11:14:17 +00:00
|
|
|
import Test.Runner.Node exposing (run)
|
|
|
|
import Json.Encode exposing (Value)
|
|
|
|
import Test exposing (..)
|
|
|
|
import Expect
|
2016-03-26 18:34:31 +00:00
|
|
|
import NucleotideCount exposing (nucleotideCounts, version)
|
2016-03-17 01:36:38 +00:00
|
|
|
|
2016-03-17 01:38:51 +00:00
|
|
|
|
2016-03-17 01:36:38 +00:00
|
|
|
tests : Test
|
2016-03-17 01:38:51 +00:00
|
|
|
tests =
|
2016-08-17 11:14:17 +00:00
|
|
|
describe "NucleotideCount"
|
|
|
|
[ test "the solution is for the correct version of the test" <|
|
|
|
|
\() -> Expect.equal 2 version
|
|
|
|
, test "empty dna strand has no nucleotides" <|
|
|
|
|
\() ->
|
|
|
|
Expect.equal { a = 0, t = 0, c = 0, g = 0 }
|
|
|
|
(nucleotideCounts "")
|
|
|
|
, test "repetitive-sequence-has-only-guanosine" <|
|
|
|
|
\() ->
|
|
|
|
Expect.equal { a = 0, t = 0, c = 0, g = 8 }
|
|
|
|
(nucleotideCounts "GGGGGGGG")
|
|
|
|
, test "counts all nucleotides" <|
|
|
|
|
\() ->
|
|
|
|
Expect.equal { a = 20, t = 21, c = 12, g = 17 }
|
|
|
|
(nucleotideCounts "AGCTTTTCATTCTGACTGCAACGGGCAATATGTCTCTGTGTGGATTAAAAAAAGAGTGTCTGATAGCAGC")
|
2016-06-19 21:46:13 +00:00
|
|
|
]
|
2016-03-17 01:38:51 +00:00
|
|
|
|
2016-03-17 01:36:38 +00:00
|
|
|
|
2016-08-23 00:31:41 +00:00
|
|
|
main : Program Value
|
2016-05-13 02:26:52 +00:00
|
|
|
main =
|
2016-08-17 11:14:17 +00:00
|
|
|
run emit tests
|
|
|
|
|
|
|
|
|
|
|
|
port emit : ( String, Value ) -> Cmd msg
|