Change dependency parser in SQL::T::Parser::DBIC for @view_sources. --AKB
[dbsrgits/DBIx-Class.git] / t / 105view_deps.t
index 8c8bb9a..b584cbd 100644 (file)
@@ -16,24 +16,30 @@ BEGIN {
 
 my $view = DBIx::Class::ResultSource::View->new( { name => 'Quux' } );
 
-isa_ok( $view, 'DBIx::Class::ResultSource', 'A new view');
-isa_ok( $view, 'DBIx::Class', 'A new view also');
+isa_ok( $view, 'DBIx::Class::ResultSource', 'A new view' );
+isa_ok( $view, 'DBIx::Class', 'A new view also' );
 
-can_ok( $view, $_ ) for qw/new from depends_on/;
+can_ok( $view, $_ ) for qw/new from deploy_depends_on/;
 
 ### DEPS
 
 my $schema = ViewDeps->connect;
 ok( $schema, 'Connected to ViewDeps schema OK' );
 
-my @bar_deps = keys %{ $schema->resultset('Bar')->result_source->depends_on };
 
-my @foo_deps = keys %{ $schema->resultset('Foo')->result_source->depends_on };
+my $bar_rs = $schema->resultset('Bar');
+
+my @bar_deps
+    = keys %{ $schema->resultset('Bar')->result_source->deploy_depends_on };
+
+my @foo_deps
+    = keys %{ $schema->resultset('Foo')->result_source->deploy_depends_on };
 
 isa_ok( $schema->resultset('Bar')->result_source,
     'DBIx::Class::ResultSource::View', 'Bar' );
 
-is( $bar_deps[0], 'mixin', 'which is reported to depend on mixin.' );
+is( $bar_deps[0], 'baz',   'which is reported to depend on baz...' );
+is( $bar_deps[1], 'mixin', 'and on mixin.' );
 is( $foo_deps[0], undef,   'Foo has no dependencies...' );
 
 isa_ok(
@@ -47,9 +53,14 @@ isa_ok(
     "Baz on the other hand"
 );
 dies_ok {
-    ViewDeps::Result::Baz->result_source_instance->depends_on(
-        { ViewDeps::Result::Mixin->result_source_instance->name => 1 } );
+    ViewDeps::Result::Baz->result_source_instance
+        ->deploy_depends_on("ViewDeps::Result::Mixin");
 }
-"...and you cannot use depends_on with that";
+"...and you cannot use deploy_depends_on with that";
+
+is(ViewDeps->source('Foo')->view_definition, $schema->resultset('Bar')->result_source->view_definition, "Package Foo's view definition is equivalent to resultset Bar's view definition");
+
+my $dir = "t/sql";
+$schema->create_ddl_dir( ['PostgreSQL','SQLite'], 0.1, $dir );
 
 done_testing;