2 use warnings FATAL => 'all';
6 package BasicCollection;
7 require 't/dbix-data-set/01basic_collection.t';
10 sub setup_dbh { BasicCollection::setup_dbh }
16 $dbh->do("CREATE TABLE spoon (
17 id INTEGER NOT NULL PRIMARY KEY,
18 last_frobnicated DATE NOT NULL
20 $dbh->do("INSERT INTO spoon (last_frobnicated) VALUES ('2009-03-30')")
26 my $store = DBIx::Data::Store::CRUD->new(
27 raw_store => BasicCollection::raw_store,
28 select_sql => 'SELECT id, last_frobnicated FROM spoon',
29 select_column_order => [ qw(id last_frobbed) ],
30 update_sql => 'UPDATE spoon SET last_frobnicated = ?',
31 update_argument_order => [ qw(last_frobbed) ],
32 delete_sql => 'DELETE FROM spoon',
36 DBIx::Data::Collection::Set->new(
42 sub sort_set { sort { $a->{id} <=> $b->{id} } @_ }
48 my @expected = map +{ id => ++$x, last_frobbed => '2009-03-30' }, 1 .. 5;
50 my @data = $set->flatten;
58 $set->_update_set_in_store({ last_frobbed => '2009-04-01' });
60 $_->{last_frobbed} = '2009-04-01' for @expected;
69 [ sort_set make_set->flatten ],
74 $set->_remove_set_from_store;
78 @data = $set->flatten;
87 [ sort_set make_set->flatten ],