31 lines
1,009 B
Haskell
31 lines
1,009 B
Haskell
|
|
-- Tests for oracle dialect parsing
|
|
|
|
{-# LANGUAGE OverloadedStrings #-}
|
|
module Language.SQL.SimpleSQL.Oracle (oracleTests) where
|
|
|
|
import Language.SQL.SimpleSQL.TestTypes
|
|
import Language.SQL.SimpleSQL.Syntax
|
|
|
|
oracleTests :: TestItem
|
|
oracleTests = Group "oracle dialect"
|
|
[oracleLobUnits]
|
|
|
|
|
|
oracleLobUnits :: TestItem
|
|
oracleLobUnits = Group "oracleLobUnits" (map (uncurry (TestScalarExpr oracle))
|
|
[("cast (a as varchar2(3 char))"
|
|
,Cast (Iden [Name Nothing "a"]) (
|
|
PrecLengthTypeName [Name Nothing "varchar2"] 3 Nothing (Just PrecCharacters)))
|
|
,("cast (a as varchar2(3 byte))"
|
|
,Cast (Iden [Name Nothing "a"]) (
|
|
PrecLengthTypeName [Name Nothing "varchar2"] 3 Nothing (Just PrecOctets)))
|
|
]
|
|
++ [TestStatement oracle
|
|
"create table t (a varchar2(55 BYTE));"
|
|
$ CreateTable [Name Nothing "t"]
|
|
[TableColumnDef $ ColumnDef (Name Nothing "a")
|
|
(PrecLengthTypeName [Name Nothing "varchar2"] 55 Nothing (Just PrecOctets))
|
|
Nothing []]]
|
|
)
|