X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class.git;a=blobdiff_plain;f=t%2Flib%2FDBICTest%2FSchema%2FTreeLike.pm;h=853bfe6adde770d0c38a01dac6152e5127732135;hp=9fde9f3828b5c3f3c82f952e0f1ff211ed377ae3;hb=4a233f3019d2baa4bf2abee0c873c74d5cdf3a11;hpb=cb561d1a7f53ab9a2e505d86c64cfc6977b4db78 diff --git a/t/lib/DBICTest/Schema/TreeLike.pm b/t/lib/DBICTest/Schema/TreeLike.pm index 9fde9f3..853bfe6 100644 --- a/t/lib/DBICTest/Schema/TreeLike.pm +++ b/t/lib/DBICTest/Schema/TreeLike.pm @@ -1,14 +1,15 @@ -package # hide from PAUSE +package # hide from PAUSE DBICTest::Schema::TreeLike; -use base qw/DBIx::Class/; +use warnings; +use strict; -__PACKAGE__->load_components(qw/PK::Auto::SQLite Core/); +use base qw/DBICTest::BaseResult/; __PACKAGE__->table('treelike'); __PACKAGE__->add_columns( 'id' => { data_type => 'integer', is_auto_increment => 1 }, - 'parent' => { data_type => 'integer' }, + 'parent' => { data_type => 'integer' , is_nullable=>1}, 'name' => { data_type => 'varchar', size => 100, }, @@ -16,5 +17,15 @@ __PACKAGE__->add_columns( __PACKAGE__->set_primary_key(qw/id/); __PACKAGE__->belongs_to('parent', 'TreeLike', { 'foreign.id' => 'self.parent' }); +__PACKAGE__->has_many('children', 'TreeLike', { 'foreign.parent' => 'self.id' }); +## since this is a self referential table we need to do a post deploy hook and get +## some data in while constraints are off + + sub sqlt_deploy_hook { + my ($self, $sqlt_table) = @_; + + ## We don't seem to need this anymore, but keeping it for the moment + ## $sqlt_table->add_index(name => 'idx_name', fields => ['name']); + } 1;