subtree(users/wpcarro): docking briefcase at '24f5a642'
git-subtree-dir: users/wpcarro git-subtree-mainline:464bbcb15cgit-subtree-split:24f5a642afChange-Id: I6105b3762b79126b3488359c95978cadb3efa789
This commit is contained in:
commit
019f8fd211
766 changed files with 175420 additions and 0 deletions
54
users/wpcarro/zoo/Spec.hs
Normal file
54
users/wpcarro/zoo/Spec.hs
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
--------------------------------------------------------------------------------
|
||||
module Spec where
|
||||
--------------------------------------------------------------------------------
|
||||
import RIO
|
||||
import Test.Hspec
|
||||
import Test.QuickCheck
|
||||
import Main hiding (main)
|
||||
|
||||
import qualified RIO.Text as Text
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
main :: IO ()
|
||||
main = hspec $ do
|
||||
describe "Main" $ do
|
||||
it "handles seconds" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "s"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftSeconds = x })
|
||||
|
||||
it "handles minutes" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "m"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftMinutes = x })
|
||||
|
||||
it "handles hours" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "h"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftHours = x })
|
||||
|
||||
it "handles days" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "d"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftDays = x })
|
||||
|
||||
it "handles weeks" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "w"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftWeeks = x })
|
||||
|
||||
it "handles months" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "M"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftMonths = x })
|
||||
|
||||
it "handles quarters" $ do
|
||||
property $ \x -> parseTime (Text.concat [x & show & Text.pack, "q"]) ==
|
||||
(Just defaultShiftTimeRequest { shiftQuarters = x })
|
||||
|
||||
it "handles multiple shifts" $ do
|
||||
parseTime "1s-20m5h0d-4w100M-3y2q" ==
|
||||
(Just $ ShiftTimeRequest
|
||||
{ shiftSeconds = 1
|
||||
, shiftMinutes = -20
|
||||
, shiftHours = 5
|
||||
, shiftDays = 0
|
||||
, shiftWeeks = -4
|
||||
, shiftMonths = 100
|
||||
, shiftQuarters = 2
|
||||
, shiftYears = -3
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue