content: 
  -- Tests for mysql dialect parsing
  
  {-# LANGUAGE OverloadedStrings #-}
  module Language.SQL.SimpleSQL.MySQL (mySQLTests) where
  
  import Language.SQL.SimpleSQL.TestTypes
  import Language.SQL.SimpleSQL.Syntax
  import Language.SQL.SimpleSQL.TestRunners
  
  mySQLTests :: TestItem
  mySQLTests = Group "mysql dialect"
      [backtickQuotes
      ,limit]
  
  {-
  backtick quotes
  
  limit syntax
  
  [LIMIT {[offset,] row_count | row_count OFFSET offset}]
  -}
  
  backtickQuotes :: TestItem
  backtickQuotes = Group "backtickQuotes"
      [testScalarExpr mysql "`test`" $ Iden [Name (Just ("`","`")) "test"]
      ,testParseScalarExprFails ansi2011 "`test`"]
  
  limit :: TestItem
  limit = Group "queries"
      [testQueryExpr mysql "select * from t limit 5"
       $ toQueryExpr $ sel {msFetchFirst = Just (NumLit "5")}
      ,testParseQueryExprFails mysql "select a from t fetch next 10 rows only;"
      ,testParseQueryExprFails ansi2011 "select * from t limit 5"]
    where
      sel = makeSelect
            {msSelectList = [(Star, Nothing)]
            ,msFrom = [TRSimple [Name Nothing "t"]]
            }
  