Merge pull request #31 from jcristovao/master
sum function does not return the same type it receives
This commit is contained in:
commit
9fdf296367
@ -237,12 +237,12 @@ class (Functor query, Applicative query, Monad query) =>
|
|||||||
(*.) :: PersistField a => expr (Value a) -> expr (Value a) -> expr (Value a)
|
(*.) :: PersistField a => expr (Value a) -> expr (Value a) -> expr (Value a)
|
||||||
|
|
||||||
|
|
||||||
random_ :: PersistField a => expr (Value a)
|
random_ :: (PersistField a, Num a) => expr (Value a)
|
||||||
round_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
round_ :: (PersistField a, Num a, PersistField b, Num b) => expr (Value a) -> expr (Value b)
|
||||||
ceiling_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
ceiling_ :: (PersistField a, Num a, PersistField b, Num b) => expr (Value a) -> expr (Value b)
|
||||||
floor_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
floor_ :: (PersistField a, Num a, PersistField b, Num b) => expr (Value a) -> expr (Value b)
|
||||||
|
|
||||||
sum_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
sum_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value (Maybe b))
|
||||||
min_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
min_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
||||||
max_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
max_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
||||||
avg_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value (Maybe b))
|
avg_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value (Maybe b))
|
||||||
|
|||||||
@ -323,7 +323,13 @@ main = do
|
|||||||
ret <- select $
|
ret <- select $
|
||||||
from $ \p->
|
from $ \p->
|
||||||
return $ joinV $ sum_ (p ^. PersonAge)
|
return $ joinV $ sum_ (p ^. PersonAge)
|
||||||
|
#if defined(WITH_POSTGRESQL)
|
||||||
|
liftIO $ ret `shouldBe` [ Value $ Just (36 + 17 + 17 :: Rational ) ]
|
||||||
|
#elif defined(WITH_MYSQL)
|
||||||
|
liftIO $ ret `shouldBe` [ Value $ Just (36 + 17 + 17 :: Double ) ]
|
||||||
|
#else
|
||||||
liftIO $ ret `shouldBe` [ Value $ Just (36 + 17 + 17 :: Int) ]
|
liftIO $ ret `shouldBe` [ Value $ Just (36 + 17 + 17 :: Int) ]
|
||||||
|
#endif
|
||||||
|
|
||||||
it "works with avg_" $
|
it "works with avg_" $
|
||||||
run $ do
|
run $ do
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user