import MainHelper (CallHistory(..), newUniqueCallHistory) import qualified Data.Sequence as S import qualified Data.Foldable as F import Test.Hspec {-# ANN module ("HLint: ignore Redundant do" :: String) #-} main :: IO () main = hspec $ do describe "newUniqueCallHistory" $ do it "should work" $ do let buf = S.empty:: S.Seq CallHistory let buf1 = newUniqueCallHistory buf 1 $ CallHistory "time1" "ip1" "ua1" F.toList buf1 `shouldBe` [ CallHistory "time1" "ip1" "ua1" ] let buf2 = newUniqueCallHistory buf1 1 $ CallHistory "time2" "ip1" "ua1" F.toList buf2 `shouldBe` [ CallHistory "time2" "ip1" "ua1" ] let buf3 = newUniqueCallHistory buf1 2 $ CallHistory "time3" "ip2" "ua2" F.toList buf3 `shouldBe` [ CallHistory "time1" "ip1" "ua1" , CallHistory "time3" "ip2" "ua2" ] let buf4 = newUniqueCallHistory buf1 1 $ CallHistory "time3" "ip2" "ua2" F.toList buf4 `shouldBe` [ CallHistory "time3" "ip2" "ua2" ]