mirror of
https://github.com/correl/elm.git
synced 2024-12-19 03:00:29 +00:00
commit
e43df831e1
5 changed files with 34 additions and 0 deletions
|
@ -6,6 +6,7 @@
|
|||
"test_pattern": "TODO",
|
||||
"problems": [
|
||||
"hello_world",
|
||||
"leap",
|
||||
"bob"
|
||||
],
|
||||
"deprecated": [
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
"source-directories": [
|
||||
".",
|
||||
"./exercises/hello_world",
|
||||
"./exercises/leap",
|
||||
"./exercises/bob"
|
||||
],
|
||||
"exposed-modules": [],
|
||||
|
|
1
exercises/leap/Leap.elm
Normal file
1
exercises/leap/Leap.elm
Normal file
|
@ -0,0 +1 @@
|
|||
module Leap (..) where
|
6
exercises/leap/Leap.example
Normal file
6
exercises/leap/Leap.example
Normal file
|
@ -0,0 +1,6 @@
|
|||
module Leap (..) where
|
||||
|
||||
|
||||
isLeapYear : Int -> Bool
|
||||
isLeapYear year =
|
||||
year % 4 == 0 && (year % 100 /= 0 || year % 400 == 0)
|
25
exercises/leap/LeapTests.elm
Normal file
25
exercises/leap/LeapTests.elm
Normal file
|
@ -0,0 +1,25 @@
|
|||
module Main (..) where
|
||||
|
||||
import Task
|
||||
import Console
|
||||
import ElmTest exposing (..)
|
||||
import Leap
|
||||
|
||||
|
||||
tests : Test
|
||||
tests =
|
||||
suite
|
||||
"Leap"
|
||||
[ test "leap year" (assertEqual True (Leap.isLeapYear 1996))
|
||||
, test "non-leap year" (assertEqual False (Leap.isLeapYear 1997))
|
||||
, test "non-leap even year" (assertEqual False (Leap.isLeapYear 1998))
|
||||
, test "century" (assertEqual False (Leap.isLeapYear 1900))
|
||||
, test "second century" (assertEqual False (Leap.isLeapYear 1800))
|
||||
, test "fourth century" (assertEqual True (Leap.isLeapYear 2400))
|
||||
, test "y2k" (assertEqual True (Leap.isLeapYear 2000))
|
||||
]
|
||||
|
||||
|
||||
port runner : Signal (Task.Task x ())
|
||||
port runner =
|
||||
Console.run (consoleRunner tests)
|
Loading…
Reference in a new issue