The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Test::DBUnit::Generator - dbunit dataset generator

SYNOPSIS

    use Test::DBUnit::Generator;

    my $connection = DBIx::Connection->new(
        name     => 'test',
        dsn      => $ENV{DB_TEST_CONNECTION},
        username => $ENV{DB_TEST_USERNAME},
        password => $ENV{DB_TEST_PASSWORD},
    );

    my $generator = Test::DBUnit::Generator->new(
        connection      => $connection,
        datasets => {
            emp => 'SELECT * FROM emp',
            dept => 'SELECT * FROM demp',
        },
    );
    
    print $generator->xml_dataset;
    print $generator->dataset;


    pritn $generator->schema_validator(
        has_table        => 1,
        has_columns      => 1,
        has_pk           => 1,
        has_fk           => 1,
        has_index        => 1,
    );
    
    

DESCRIPTION

This class generates xml or perl test datasets based on passed in sql. Additionally it can generate schema validator code.

ATTRIBUTES

connection
datasets_order

Specifies order of the dataset in the generation result.

    my $generator = Test::DBUnit::Generator->new(
        connection      => $connection,
        datasets_order   => ['emp', 'dept'],
        datasets => {
            emp => 'SELECT * FROM emp',
            dept => 'SELECT * FROM demp',
        },
    );
datasets

METHODS

xml_dataset

Returns xml content that contains dataset

dataset

Generated dataset as perl code

_inscrease_tests_no
schema_validator

Generates schema validation code. Takes the following options as paramters:

has_table => 1, has_columns => 1, has_pk => 1, has_fk => 1, has_index => 1,

_has_table
_dataset_order
_has_columns
_has_pk
_has_fk
_has_index
_select_dataset

Returns dataset structure