Sha256: 14a8cad16474cee2bfc0c5baba28a74ee6e9978256f42314acecfb9d92904d9c

Contents?: true

Size: 1.02 KB

Versions: 229

Compression:

Stored size: 1.02 KB

Contents

import Data.Time.Clock   (UTCTime)
import Test.Hspec        (Spec, describe, it, shouldBe)
import Test.Hspec.Runner (configFastFail, defaultConfig, hspecWith)

import Gigasecond (fromDay)

import Data.Time.Format
  ( ParseTime
  , TimeLocale
  , defaultTimeLocale
  , iso8601DateFormat
  , parseTimeOrError
  )

readTime :: ParseTime t => TimeLocale -> String -> String -> t
readTime = parseTimeOrError True

main :: IO ()
main = hspecWith defaultConfig {configFastFail = True} specs

specs :: Spec
specs = describe "fromDay" $ do

          let dt = readTime defaultTimeLocale
                   (iso8601DateFormat (Just "%T%Z")) :: String -> UTCTime

          it "from apr 25 2011" $
            fromDay (dt "2011-04-25T00:00:00Z")
            `shouldBe` dt "2043-01-01T01:46:40Z"

          it "from jun 13 1977" $
            fromDay (dt "1977-06-13T00:00:00Z")
            `shouldBe` dt "2009-02-19T01:46:40Z"

          it "from jul 19 1959" $
            fromDay (dt "1959-07-19T00:00:00Z")
            `shouldBe` dt "1991-03-27T01:46:40Z"

Version data entries

229 entries across 229 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.179 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.178 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.177 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.176 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.175 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.174 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.173 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.172 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.171 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.170 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.169 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.167 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.166 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.165 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.164 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.163 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.162 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.161 tracks/haskell/exercises/gigasecond/test/Tests.hs
trackler-2.2.1.160 tracks/haskell/exercises/gigasecond/test/Tests.hs