Mercurial > pub > Impl
view _test/Test/SQL/Diff.pm @ 180:d1676be8afcc
Перекодировка в utf-8
author | sourcer |
---|---|
date | Fri, 30 Dec 2011 23:40:00 +0300 |
parents | fd92830036c3 |
children | 47dac58691ee |
line wrap: on
line source
package Test::SQL::Diff; use strict; use warnings; use parent qw(IMPL::Test::Unit); use IMPL::Test qw(test failed assert); use IMPL::SQL::Schema(); use IMPL::SQL::Types qw(Integer Varchar Text); use IMPL::SQL::Schema::Traits::Diff(); use Data::Dumper; __PACKAGE__->PassThroughArgs; test diff => sub { my $schemaSrc = new IMPL::SQL::Schema(name => 'simple', version => 1 ); my $tbl = $schemaSrc->AddTable({ name => 'User', columns => [ { name => 'name', type => Varchar(255) }, { name => 'description', type => Varchar(255) } ] }); $tbl->AddConstraint( unique => { name => 'unique_name', columns => ['name'] }); my $schemaDst = new IMPL::SQL::Schema(name => 'simple', version => 2 ); my $users = $schemaDst->AddTable({ name => 'User', columns => [ { name => 'id', type => Integer }, { name => 'login', type => Varchar(255) }, { name => 'description', type => Text, isNullable => 1 } ] }); $users->SetPrimaryKey('id'); $users->AddConstraint( unique => { name => 'unique_login', columns => ['login'] } ); warn Dumper(IMPL::SQL::Schema::Traits::Diff->Diff($schemaSrc,$schemaDst)); $schemaSrc->Dispose; $schemaDst->Dispose; }; 1;