{-# LANGUAGE QuasiQuotes #-} module QQ ( testSimpleQQ , testMultiLinedQQ ) where import Common import Database.SQLite.Simple.QQ (sql) testSimpleQQ :: TestEnv -> Test testSimpleQQ TestEnv{..} = TestCase $ do q <- query_ conn "SELECT 1+1" :: IO [Only Int] qq <- query_ conn [sql| SELECT 1 + 1 |] :: IO [Only Int] assertEqual "result" q qq testMultiLinedQQ :: TestEnv -> Test testMultiLinedQQ TestEnv{..} = TestCase $ do execute_ conn "CREATE TABLE testQQ (id INTEGER PRIMARY KEY, t TEXT)" execute_ conn "INSERT INTO testQQ (t) VALUES ('test string')" q <- query_ conn "SELECT t FROM testQQ" :: IO [Only String] qq <- query_ conn [sql| SELECT t FROM testQQ |] :: IO [Only String] assertEqual "result" q qq