packages feed

venzone-1.0.0.0: test/StorySpec.hs

module StorySpec where

import Test.Hspec

import Story
import Room
import Plant
import Tile

import Lens.Micro.Platform

fakeTile :: Tile
fakeTile = error "Story - fakeTile"

spec :: Spec
spec = do

  describe "checkRoomSize" $ do
    let r1 = defaultRoom & plant %~ addTile (3, 4) fakeTile
        r2 = defaultRoom & plant %~ addTile (2, 2) fakeTile
                         & title .~ "due"
    it "checks every Screen has the same dimension" $
      checkRoomSize (2, 2) [r2] `shouldBe` []
    it "returns offending screen" $
      checkRoomSize (3, 4) [r1, r2] `shouldBe` [("due", (2, 2))]