Helps if you vary the primary key

This commit is contained in:
Chris Allen 2017-05-04 21:45:35 -05:00
parent 43813cdfe2
commit 5609d78de4
2 changed files with 20 additions and 9 deletions

View File

@ -5,3 +5,12 @@ build-7.10:
build-8.0:
STACK_YAML="stack-8.0.yaml" stack build
ghci:
stack ghci
test:
stack test
test-ghci:
stack ghci esqueleto:test:test

View File

@ -1098,20 +1098,22 @@ main = do
l1k <- insert l1
l2k <- insert l2
l3k <- insert l3
liftIO $ putStrLn "****** l3 ******"
replicateM_ 3 (insert $ Deed "" l1k)
liftIO $ putStrLn "****** l1k ******"
replicateM_ 7 (insert $ Deed "" l3k)
liftIO $ putStrLn "****** l3k ******"
-- liftIO $ putStrLn "****** l3 ******"
mapM_ (\k -> insert $ Deed k l1k) (map show [1..3])
-- liftIO $ putStrLn "****** l1k ******"
mapM_ (\k -> insert $ Deed k l3k) (map show [4..10])
-- liftIO $ putStrLn "****** l3k ******"
(ret :: [(Value (Key Lord), Value Int)]) <- select $ from $
\ ( lord `InnerJoin` deed ) -> do
on $ lord ^. LordId ==. deed ^. DeedOwnerId
groupBy (lord ^. LordId)
return (lord ^. LordId, count $ deed ^. DeedId)
liftIO $ putStrLn "****** ret ******"
liftIO $ print ret
liftIO $ ret `shouldBe` [ (Value l1k, Value 3)
, (Value l3k, Value 7) ]
-- liftIO $ putStrLn "****** ret ******"
-- liftIO $ print ret
liftIO $ ret `shouldBe` [ (Value l3k, Value 7)
, (Value l1k, Value 3) ]
it "GROUP BY works with HAVING" $
run $ do