blob: b02abb04b49cb8ae3af421adb07b399d8d6ffdd6 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
--------------------------------------------------------------------------------
module Xanthous.Game.StateSpec (main, test) where
--------------------------------------------------------------------------------
import Test.Prelude
--------------------------------------------------------------------------------
import Xanthous.Game.State
import Xanthous.Entities.Raws (raws, entityFromRaw)
import Control.Monad.Random (evalRandT)
import System.Random (getStdGen)
--------------------------------------------------------------------------------
main :: IO ()
main = defaultMain test
test :: TestTree
test = testGroup "Xanthous.Game.StateSpec"
[ testGroup "entityTypeName"
[ testCase "for a creature" $ do
let gormlakRaw = raws ^?! ix "gormlak"
creature <- runRand $ entityFromRaw gormlakRaw
entityTypeName creature @?= "Creature"
, testCase "for an item" $ do
let stickRaw = raws ^?! ix "stick"
item <- runRand $ entityFromRaw stickRaw
entityTypeName item @?= "Item"
]
]
where
runRand x = evalRandT x =<< getStdGen
|