module Main where import Control.DeepSeq (force) import Data.Time.Calendar.Compat import Data.Time.Clock.System.Compat import Data.Time.Clock.TAI.Compat import Data.Time.Compat import Data.Time.Format.Compat import Test.HUnit.Base ((@?=)) main :: IO () main = do utc <- getCurrentTime -- UTCTime putStrLn $ formatTime defaultTimeLocale rfc822DateFormat (force utc) -- ZonedTime zt <- getZonedTime putStrLn $ formatTime defaultTimeLocale rfc822DateFormat (force zt) -- SystemTime st <- getSystemTime print $ force st -- FormatTime DayOfWeek formatTime defaultTimeLocale "%u %w %a %A" Monday @?= "1 1 Mon Monday" -- TAI taiNominalDayStart show (taiNominalDayStart (ModifiedJulianDay 123)) @?= "1859-03-20 00:00:00 TAI" _ParseTimeInstances :: [()] _ParseTimeInstances = [ () -- test (undefined :: CalendarDiffTime) , test (undefined :: Day) , () -- test (undefined :: DiffTime) , () -- test (undefined :: NominalDiffTime) , test (undefined :: UTCTime) , test (undefined :: UniversalTime) , () -- test (undefined :: CalendarDiffTime) , test (undefined :: TimeZone) , test (undefined :: TimeOfDay) , test (undefined :: LocalTime) , test (undefined :: ZonedTime) ] where test :: ParseTime t => t -> () test _ = () _FormatTimeInstances :: [()] _FormatTimeInstances = [ () -- test (undefined :: CalendarDiffTime) , test (undefined :: Day) , () -- test (undefined :: DiffTime) , () -- test (undefined :: NominalDiffTime) , test (undefined :: UTCTime) , test (undefined :: UniversalTime) , () -- test (undefined :: CalendarDiffTime) , test (undefined :: TimeZone) , test (undefined :: TimeOfDay) , test (undefined :: LocalTime) , test (undefined :: ZonedTime) , test (undefined :: DayOfWeek) ] where test :: FormatTime t => t -> () test _ = ()