Release commit for 1.62
[dbsrgits/SQL-Translator.git] / t / 57-class-dbi.t
CommitLineData
3ee75ce1 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(
14 name => 'view_foo',
15 fields => [qw/id name/],
16 sql => 'SELECT id, name FROM thing',
17 extra => {
18 temporary => 1,
19 if_not_exists => 1,
20 }
21 );
22 my $create_opts = { no_comments => 1 };
23 my $view1_sql1 =
4c0d31c1 24 [ SQL::Translator::Producer::SQLite::create_view( $view1, $create_opts ) ];
3ee75ce1 25
2d23c1e1 26 my $view_sql_replace = [ 'CREATE TEMPORARY VIEW IF NOT EXISTS view_foo AS
f6e49d34 27 SELECT id, name FROM thing' ];
4c0d31c1 28 is_deeply( $view1_sql1, $view_sql_replace, 'correct "CREATE TEMPORARY VIEW" SQL' );
3ee75ce1 29
30 my $view2 = SQL::Translator::Schema::View->new(
31 name => 'view_foo',
32 fields => [qw/id name/],
33 sql => 'SELECT id, name FROM thing',
34 );
35
36 my $view1_sql2 =
4c0d31c1 37 [ SQL::Translator::Producer::SQLite::create_view( $view2, $create_opts ) ];
2d23c1e1 38 my $view_sql_noreplace = [ 'CREATE VIEW view_foo AS
f6e49d34 39 SELECT id, name FROM thing' ];
4c0d31c1 40 is_deeply( $view1_sql2, $view_sql_noreplace, 'correct "CREATE VIEW" SQL' );
3ee75ce1 41}