X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F10_03pg_common.t;h=5c03b68555eaba3c156975344b3aadca3ed280a4;hb=013d8a3d7f3bf2e7b59a4655250160f66fc56846;hp=2fe5fc9b8c988063f5988db2af1723debfd9a006;hpb=40f9888acbbad69d5bf101e46eaef45c85ce2b79;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/t/10_03pg_common.t b/t/10_03pg_common.t index 2fe5fc9..5c03b68 100644 --- a/t/10_03pg_common.t +++ b/t/10_03pg_common.t @@ -514,6 +514,37 @@ dbixcsl_common_tests->new( 'unique indexes are dumped correctly'; }, }, + cond_extra => [ + { + desc => 'identity columns', + skip => 'requires PostgreSQL 10', + cond => sub { $_[0]->{pg_server_version} >= 100000 }, + create => [ + q{ + create table pg_loader_test13 ( + always integer generated always as identity, + by_default integer generated by default as identity + ) + }, + ], + drop => [ qw(pg_loader_test13) ], + run => sub { + my ($schema, $monikers, $classes) = @_; + + my $rsrc13 = $schema->source($monikers->{pg_loader_test13}); + for my $col (qw(by_default always)) { + my $info = $rsrc13->column_info($col); + (my $when = uc $col) =~ tr/_/ /; + + ok $info->{is_auto_increment}, + "is_auto_increment for GENERATED $when AS IDENTITY"; + + is $info->{extra}{generated_as_identity}, $col, + "generated_as_identity for GENERATED $when AS IDENTITY"; + } + }, + }, + ], )->run_tests(); END {