-- 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 []]] )