Sha256: 3e10886907582eeda52d65ff8dad82e35083d6c1df89f65ba2118d3b9220d791
Contents?: true
Size: 1.36 KB
Versions: 229
Compression:
Stored size: 1.36 KB
Contents
import Test.Hspec (Spec, it, shouldReturn) import Test.Hspec.Runner (configFastFail, defaultConfig, hspecWith) import Deque (mkDeque, pop, push, shift, unshift) main :: IO () main = hspecWith defaultConfig {configFastFail = True} specs {-# ANN module "HLint: ignore Reduce duplication" #-} specs :: Spec specs = do it "push pop" $ do deque <- mkDeque push deque 'a' push deque 'b' pop deque `shouldReturn` Just 'b' pop deque `shouldReturn` Just 'a' it "push shift" $ do deque <- mkDeque push deque 'a' push deque 'b' shift deque `shouldReturn` Just 'a' shift deque `shouldReturn` Just 'b' it "unshift shift" $ do deque <- mkDeque unshift deque 'a' unshift deque 'b' shift deque `shouldReturn` Just 'b' shift deque `shouldReturn` Just 'a' it "unshift pop" $ do deque <- mkDeque unshift deque 'a' unshift deque 'b' pop deque `shouldReturn` Just 'a' pop deque `shouldReturn` Just 'b' it "example" $ do deque <- mkDeque push deque 'a' push deque 'b' pop deque `shouldReturn` Just 'b' push deque 'c' shift deque `shouldReturn` Just 'a' unshift deque 'd' push deque 'e' shift deque `shouldReturn` Just 'd' pop deque `shouldReturn` Just 'e' pop deque `shouldReturn` Just 'c'
Version data entries
229 entries across 229 versions & 1 rubygems