Use Optional::Dependencies for CDBICompat and its tests
[dbsrgits/DBIx-Class.git] / t / cdbi / 71_column_object.t
CommitLineData
7ad80222 1use strict;
2use warnings;
3
4# Columns in CDBI could be defined as Class::DBI::Column objects rather than
5# or as well as with __PACKAGE__->columns();
6
7use Test::More;
8
c8dc7d33 9BEGIN {
10 eval { require Class::DBI::Column }
11 or plan skip_all => 'Class::DBI::Column required for this test';
12}
13
7ad80222 14use lib 't/cdbi/testlib';
15use ColumnObject;
16
17ok(ColumnObject->can('db_Main'), 'set_db()');
18is(ColumnObject->__driver, 'SQLite', 'Driver set correctly');
19
20ColumnObject->create({
21 columna => 'Test Data',
22 columnb => 'Test Data 2',
23});
24
25my $column_object = ColumnObject->retrieve(columna => 'Test Data');
26$column_object->columnb_as_write('Test Data Written');
27$column_object->update;
28$column_object = ColumnObject->retrieve(columna => 'Test Data');
29
30is($column_object->columna_as_read => 'Test Data', 'Read column via accessor');
31is($column_object->columna => 'Test Data', 'Real column returns right data');
32is($column_object->columnb => 'Test Data Written', 'ColumnB wrote via mutator');
33
34done_testing;