From 55e3302f4f26dbe114efcf38df026bf58214a062 Mon Sep 17 00:00:00 2001 From: Bas van Dijk Date: Thu, 22 Jul 2021 12:00:37 +0200 Subject: [PATCH] Test: changed order to match IntervalNum instances --- Test/Test.hs | 90 ++++++++++++++++++++++++++-------------------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/Test/Test.hs b/Test/Test.hs index 95fbd7994..9f31a7b85 100644 --- a/Test/Test.hs +++ b/Test/Test.hs @@ -1264,24 +1264,27 @@ testForUpdate = do it "Returns same rows from a table" $ testH (OL.forUpdate table1Q) (`shouldBe` table1data) -testAddIntervalFromTimestamptzToTimestamptz :: Test -testAddIntervalFromTimestamptzToTimestamptz = do - it "timestamptz + interval = timestamptz" $ testH query (`shouldBe` [expectation]) - where query :: Select (Field O.SqlTimestamptz) - query = pure $ (O.toFields t :: Field O.SqlTimestamptz) +testAddIntervalFromDateToTimestamptz :: Test +testAddIntervalFromDateToTimestamptz = do + it "date + interval = timestamptz" $ testH query (`shouldBe` [expectation]) + where query :: Select (Field O.SqlTimestamp) + query = pure $ (O.toFields d :: Field O.SqlDate) `O.addInterval` (O.toFields c :: Field O.SqlInterval) - -- UNIX epoch - t :: Time.UTCTime - t = Time.posixSecondsToUTCTime 0 + d :: Time.Day + d = Time.ModifiedJulianDay 0 -- = 1858-11-17 -- 1 second c :: Time.CalendarDiffTime c = Time.calendarTimeTime 1 - expectation :: Time.UTCTime - expectation = Time.ctTime c `Time.addUTCTime` t + expectation :: Time.LocalTime + expectation = Time.ctTime c `Time.addLocalTime` + Time.LocalTime + { Time.localDay = d + , Time.localTimeOfDay = Time.TimeOfDay 0 0 0 + } testAddIntervalFromIntervalToInterval :: Test testAddIntervalFromIntervalToInterval = do @@ -1302,27 +1305,45 @@ testAddIntervalFromIntervalToInterval = do expectation :: Time.CalendarDiffTime expectation = Time.calendarTimeTime $ Time.ctTime c1 + Time.ctTime c2 -testAddIntervalFromDateToTimestamptz :: Test -testAddIntervalFromDateToTimestamptz = do - it "date + interval = timestamptz" $ testH query (`shouldBe` [expectation]) +testAddIntervalFromTimestampToTimestamp :: Test +testAddIntervalFromTimestampToTimestamp = do + it "timestamp + interval = timestamp" $ testH query (`shouldBe` [expectation]) where query :: Select (Field O.SqlTimestamp) - query = pure $ (O.toFields d :: Field O.SqlDate) + query = pure $ (O.toFields t :: Field O.SqlTimestamp) `O.addInterval` (O.toFields c :: Field O.SqlInterval) - d :: Time.Day - d = Time.ModifiedJulianDay 0 -- = 1858-11-17 + t :: Time.LocalTime + t = Time.LocalTime + { Time.localDay = Time.ModifiedJulianDay 0 -- = 1858-11-17 + , Time.localTimeOfDay = Time.TimeOfDay 0 0 0 -- midnight + } -- 1 second c :: Time.CalendarDiffTime c = Time.calendarTimeTime 1 expectation :: Time.LocalTime - expectation = Time.ctTime c `Time.addLocalTime` - Time.LocalTime - { Time.localDay = d - , Time.localTimeOfDay = Time.TimeOfDay 0 0 0 - } + expectation = Time.ctTime c `Time.addLocalTime` t + +testAddIntervalFromTimestamptzToTimestamptz :: Test +testAddIntervalFromTimestamptzToTimestamptz = do + it "timestamptz + interval = timestamptz" $ testH query (`shouldBe` [expectation]) + where query :: Select (Field O.SqlTimestamptz) + query = pure $ (O.toFields t :: Field O.SqlTimestamptz) + `O.addInterval` + (O.toFields c :: Field O.SqlInterval) + + -- UNIX epoch + t :: Time.UTCTime + t = Time.posixSecondsToUTCTime 0 + + -- 1 second + c :: Time.CalendarDiffTime + c = Time.calendarTimeTime 1 + + expectation :: Time.UTCTime + expectation = Time.ctTime c `Time.addUTCTime` t testAddIntervalFromTimeToTime :: Test testAddIntervalFromTimeToTime = do @@ -1345,27 +1366,6 @@ testAddIntervalFromTimeToTime = do (realToFrac (Time.ctTime c :: Time.NominalDiffTime) :: Time.DiffTime) + Time.timeOfDayToTime t -testAddIntervalFromTimestampToTimestamp :: Test -testAddIntervalFromTimestampToTimestamp = do - it "timestamp + interval = timestamp" $ testH query (`shouldBe` [expectation]) - where query :: Select (Field O.SqlTimestamp) - query = pure $ (O.toFields t :: Field O.SqlTimestamp) - `O.addInterval` - (O.toFields c :: Field O.SqlInterval) - - t :: Time.LocalTime - t = Time.LocalTime - { Time.localDay = Time.ModifiedJulianDay 0 -- = 1858-11-17 - , Time.localTimeOfDay = Time.TimeOfDay 0 0 0 -- midnight - } - - -- 1 second - c :: Time.CalendarDiffTime - c = Time.calendarTimeTime 1 - - expectation :: Time.LocalTime - expectation = Time.ctTime c `Time.addLocalTime` t - main :: IO () main = do let envVarName = "POSTGRES_CONNSTRING" @@ -1523,8 +1523,8 @@ main = do describe "Locking" $ do testForUpdate describe "Interval" $ do - testAddIntervalFromTimestamptzToTimestamptz - testAddIntervalFromIntervalToInterval testAddIntervalFromDateToTimestamptz - testAddIntervalFromTimeToTime + testAddIntervalFromIntervalToInterval testAddIntervalFromTimestampToTimestamp + testAddIntervalFromTimestamptzToTimestamptz + testAddIntervalFromTimeToTime