Begin a broken-out NestedMap type

Begin breaking out a NestedMap data structure, which existed in both the
variables for the new template system and the structure that stored
messages.
This commit is contained in:
Griffin Smith 2020-05-25 11:21:19 -04:00
parent 2c86856ca7
commit db6ea02581
5 changed files with 258 additions and 2 deletions

View file

@ -0,0 +1,20 @@
--------------------------------------------------------------------------------
module Xanthous.Data.NestedMapSpec (main, test) where
--------------------------------------------------------------------------------
import Test.Prelude
--------------------------------------------------------------------------------
import Test.QuickCheck.Instances.Semigroup ()
--------------------------------------------------------------------------------
import qualified Xanthous.Data.NestedMap as NM
--------------------------------------------------------------------------------
main :: IO ()
main = defaultMain test
test :: TestTree
test = testGroup "Xanthous.Data.NestedMap"
[ testProperty "insert/lookup" $ \nm ks v ->
let nm' = NM.insert ks v nm
in counterexample ("inserted: " <> show nm')
$ NM.lookup @Map @Int @Int ks nm' === Just (NM.Val v)
]