quote SQLite identifiers
[dbsrgits/SQL-Translator.git] / t / 56-sqlite-producer.t
CommitLineData
24d9fe69 1#!/usr/bin/perl
2# vim: set ft=perl:
3
4use strict;
5use Test::More tests => 2;
6use Test::SQL::Translator qw(maybe_plan);
7use FindBin qw/$Bin/;
8
9use SQL::Translator::Schema::View;
10use SQL::Translator::Producer::SQLite;
11
12{
13 my $view1 = SQL::Translator::Schema::View->new( name => 'view_foo',
14 fields => [qw/id name/],
15 sql => 'SELECT id, name FROM thing',
16 extra => {
17 temporary => 1,
18 if_not_exists => 1,
19 });
20 my $create_opts = { no_comments => 1 };
4c0d31c1 21 my $view1_sql1 = [ SQL::Translator::Producer::SQLite::create_view($view1, $create_opts) ];
24d9fe69 22
d8cf2279 23 my $view_sql_replace = [ "CREATE TEMPORARY VIEW IF NOT EXISTS 'view_foo' AS
4c0d31c1 24 SELECT id, name FROM thing" ];
25 is_deeply($view1_sql1, $view_sql_replace, 'correct "CREATE TEMPORARY VIEW" SQL');
24d9fe69 26
27
28 my $view2 = SQL::Translator::Schema::View->new( name => 'view_foo',
29 fields => [qw/id name/],
30 sql => 'SELECT id, name FROM thing',);
31
4c0d31c1 32 my $view1_sql2 = [ SQL::Translator::Producer::SQLite::create_view($view2, $create_opts) ];
d8cf2279 33 my $view_sql_noreplace = [ "CREATE VIEW 'view_foo' AS
4c0d31c1 34 SELECT id, name FROM thing" ];
35 is_deeply($view1_sql2, $view_sql_noreplace, 'correct "CREATE VIEW" SQL');
24d9fe69 36}