DBICx::TestDatabase::Subclass(3pm)

DBICx::TestDatabase::Subclass3pm

A dbicx::testdatabase you can add your own methods to

Usage

Your test database subclass:

   package MyApp::TestDatabase
   use base qw(DBICx::TestDatabase::Subclass MyApp::Schema);
   sub foo { 
      my $self = shift;
      return $self->resultset('Foo')->create({ foo => 'bar' });
   }

Later:

   use MyApp::TestDatabase;
   my $schema = MyApp::TestDatabase->connect;
   my $foo_row = $schema->foo; # MyApp::TestDatabase::foo
   my $bars = $schema->resultset('Bar'); # MyApp::Schema::resultset

Overview

Sometimes DBICx::TestDatabase doesn't give you enough control over the object returned. This module lets you create a custom test database class.

Methods

connect

This method creates the temporary database and returns the connection. If your subclass needs to change the way connect works, do something like this:

    sub connect {
        my ($class) = @_;
        say 'This happens before we create the test database.';
        my $schema = $class->next::method;
        say '$schema is the temporary test database';
       
        return $schema;
    }

Releases

9 releases since Debian 5.0 (Lenny); the text changed 4 times.

  1. 5.0–6.0
  2. 7
  3. 8–9
  4. 10–11
  5. 12–13

Author

Jonathan Rockway "<[email protected]>"

License

Copyright (c) 2007 Jonathan Rockway.

This program is free software. You may use, modify, and redistribute it under the same terms as Perl itself.

From libdbicx-testdatabase-perl 0.05-3 in Debian 13 (Trixie). Parsed by carta from the page's man source.