released
[dbsrgits/DBIx-Class-Fixtures.git] / t / lib / ExtraTest / Schema.pm
CommitLineData
6d01d9c1 1package ExtraTest::Schema::Result::Photo;
2
3use strict;
4use warnings;
5
6use base 'DBIx::Class::Core';
7
8__PACKAGE__->load_components(qw/InflateColumn::FS/);
9__PACKAGE__->table('photo');
10
11__PACKAGE__->add_columns(
12 photo_id => {
13 data_type => 'integer',
14 is_auto_increment => 1,
15 },
16 photographer => {
17 data_type => 'varchar',
18 size => 40,
19 },
20 file => {
21 data_type => 'varchar',
22 size => 255,
23 is_fs_column => 1,
24 fs_column_path =>'./t/var/files',
25 });
26
27__PACKAGE__->set_primary_key('photo_id');
28
29package ExtraTest::Schema;
30
31use strict;
32use warnings;
33
34use base 'DBIx::Class::Schema';
35
36__PACKAGE__->register_class(
37 Photo => 'ExtraTest::Schema::Result::Photo');
38
39sub load_sql {
40 local $/ = undef;
41 my $sql = <DATA>;
42}
43
44sub init_schema {
45 my $sql = (my $schema = shift)
46 ->load_sql;
47
48 ($schema->storage->dbh->do($_) ||
49 die "Error on SQL: $_\n")
50 for split(/;\n/, $sql);
51}
52
531;
54
55__DATA__
56CREATE TABLE photo (
57 photo_id INTEGER PRIMARY KEY NOT NULL,
58 photographer varchar(40) NOT NULL,
59 file varchar(255) NOT NULL
60)
61