datetime-sb 0.2.3 → 0.2.4
raw patch · 2 files changed
+53/−1 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- datetime-sb.cabal +2/−1
- test/Data/DateTimeTest.hs +51/−0
datetime-sb.cabal view
@@ -1,5 +1,5 @@ name: datetime-sb-version: 0.2.3+version: 0.2.4 stability: experimental Description: Provides several utilities for easily converting among the@@ -34,6 +34,7 @@ type: exitcode-stdio-1.0 hs-source-dirs: test main-is: Suite.hs+ other-modules: Data.DateTimeTest build-depends: datetime-sb
+ test/Data/DateTimeTest.hs view
@@ -0,0 +1,51 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}++module Data.DateTimeTest where++import Test.Framework+import Test.Framework.Providers.QuickCheck2 (testProperty)+import Test.QuickCheck+import Data.Maybe (fromJust)++import Data.Time.Clock (UTCTime)+import Data.DateTime++instance Arbitrary UTCTime where+ arbitrary = do+ offset <- choose (0, 20000) :: Gen Float+ return . fromMJD' $ offset + fromRational startOfTimeMJD+++tests :: [Test]+tests = [ testGroup "properties"+ [ testProperty "MJD" prop_MJD+ , testProperty "Universal" prop_Universal+ , testProperty "StartOfTime" prop_StartOfTime+ , testProperty "SqlString" prop_SqlString+ -- , testProperty "SqlStartOfTime" prop_SqlStartOfTime+ ]+ ]++invariant :: Eq a => (a -> a) -> a -> Bool+invariant f x = f x == x++prop_MJD :: DateTime -> Bool+prop_MJD = invariant $ fromMJD . toMJD++prop_MJD' :: DateTime -> Bool+prop_MJD' = invariant $ fromMJD' . toMJD'++prop_Universal :: DateTime -> Bool+prop_Universal = invariant $ fromUniversalTime . toUniversalTime++prop_StartOfTime :: DateTime -> Bool+prop_StartOfTime _ = toSeconds startOfTime == 0++prop_SqlString :: DateTime -> Bool+prop_SqlString dt = (fromJust . fromSqlString . toSqlString $ dt') == dt'+ where+ Just dt' = fromSqlString . toSqlString $ dt++-- It doesn't seem like this test ever passed, so disabling.+-- prop_SqlStartOfTime :: DateTime -> Bool+-- prop_SqlStartOfTime _ = toSqlString startOfTime == "1970-01-01 00:00:00"