#!/usr/bin/env perl
my
$ddl
=
<<DDL;
CREATE TABLE "Foo" (
"foo" INTEGER PRIMARY KEY NOT NULL,
"bar" VARCHAR(10) NOT NULL,
"biff" VARCHAR(10)
);
DDL
my
%common_args
= (
no_comments
=> 1,
from
=>
'SQLite'
,
to
=>
'SQLite'
);
my
$unquoted
= SQL::Translator->new(
%common_args
)->translate(\
$ddl
);
eq_or_diff(
$unquoted
,
<<'DDL', 'DDL with default quoting');
BEGIN TRANSACTION;
CREATE TABLE Foo (
foo INTEGER PRIMARY KEY NOT NULL,
bar VARCHAR(10) NOT NULL,
biff VARCHAR(10)
);
COMMIT;
DDL
dies_ok {
SQL::Translator->new(
%common_args
,
quote_table_names
=> 0,
quote_field_names
=> 1
)->translate(\
$ddl
)
}
'mix and match quotes is asinine'
;
my
$quoteall
= SQL::Translator->new(
%common_args
,
quote_identifiers
=> 1)
->translate(\
$ddl
);
eq_or_diff(
$quoteall
,
<<'DDL', 'DDL with quoting');
BEGIN TRANSACTION;
CREATE TABLE "Foo" (
"foo" INTEGER PRIMARY KEY NOT NULL,
"bar" VARCHAR(10) NOT NULL,
"biff" VARCHAR(10)
);
COMMIT;
DDL