hora-2.2.1: test/Test/TestDatePart.hs
module Test.TestDatePart where
import Data.Time.Hora.Type
import Prelude hiding (until)
import Test.Hspec
default (Int)
main:: SpecWith ()
main = describe "Test.TestDatePart" $ do
it "Ord" $ do
(dp 1 1 1 1 1 1 1) `shouldSatisfy` (== (dp 1 1 1 1 1 1 1))
(dp 1 1 1 1 1 1 1) `shouldSatisfy` (<= (dp 1 1 1 1 1 1 1))
(dp 1 1 1 1 1 1 1) `shouldSatisfy` (>= (dp 1 1 1 1 1 1 1))
(dp 1 1 1 1 1 1 2) `shouldSatisfy` (> (dp 1 1 1 1 1 1 1))
(dp 1 1 1 1 1 1 1) `shouldSatisfy` (<= (dp 1 1 1 1 1 1 2))
(dp 2 1 1 1 1 1 1) `shouldSatisfy` (< (dp 2 1 1 1 1 1 2))
(dp 1 1 1 2 1 1 1) `shouldSatisfy` (< (dp 1 1 1 3 1 1 1))
(dp 1 1 1 1 3 1 1) `shouldSatisfy` (> (dp 1 1 1 1 1 1 1))
it "Ord" $ do
now `shouldSatisfy` (< until)
until `shouldSatisfy` (< stop)
it "*" $ do
3 * (Sec 10) `shouldBe` (Sec 30)
300 * (Sec 1000) `shouldBe` (Sec 300000)
300 * (Milli 1000) `shouldBe` (Milli 300000)
Milli 300 + (Milli 1000) `shouldBe` (Milli 1300)
Sec 1 + (Milli 300) `shouldBe` (Milli 1300)
3 * (Pico 10) `shouldBe` (Pico 30)
Milli 397100 + (Sec 2) + 37891470000 `shouldBe` (Milli 397100 + (Sec 2) + (Pico 37891470000))
now::DatePart Int
now = DatePart {year = 2016, month = 12, day = 14, hour = 11, minute = 53, second = 38, pico = 413037964000}
until::DatePart Int
until = DatePart {year = 2016, month = 12, day = 14, hour = 11, minute = 55, second = 35, pico = 754503772000}
stop:: DatePart Int
stop = DatePart {year = 2016, month = 12, day = 14, hour = 11, minute = 55, second = 45, pico = 754504065000}
dp::Int -> Int -> Int -> Int -> Int -> Int -> Int -> DatePart Int
dp = DatePart