DBIx-Class-InflateColumn-Serializer
view release on metacpan or search on metacpan
t/003_json.t view on Meta::CPAN
$stored = $rs->create({
'testtable_id' => 2
});
ok($stored->update({ 'serial1' => $struct_hash, 'serial2' => $struct_array, 'serial3' => $struct_int }), 'deflation');
my $raw = $schema->storage->dbh_do(sub {
my ($storage, $dbh, @args) = @_;
$dbh->selectrow_hashref('SELECT * from testtable WHERE testtable_id = ?', {}, $stored->testtable_id);
});
like($raw->{serial1}, qr/"château"/, "raw data contains unicode, as-is, without transformation (latin1-ish 'château')");
like($raw->{serial1}, qr/"\x{2764}"/, "raw data contains unicode, as-is, without transformation (utf8-ish '\x{2764}')");
#retrieve what was serialized from DB
undef $stored;
$stored = $rs->find({'testtable_id' => 2});
ok($inflated = $stored->serial1, 'hashref inflation');
is_deeply($inflated, $struct_hash, 'the stored hash and the orginial are equal');
ok($inflated = $stored->serial2, 'arrayref inflation');
is_deeply($inflated, $struct_array, 'the stored array and the orginial are equal');
ok($inflated = $stored->serial3, 'int inflation (allowing nonrefs)');
t/004_yaml.t view on Meta::CPAN
$stored = $rs->create({
'testtable_id' => 3
});
ok($stored->update({ 'serial1' => $struct_hash, 'serial2' => $struct_array }), 'deflation');
my $raw = $schema->storage->dbh_do(sub {
my ($storage, $dbh, @args) = @_;
$dbh->selectrow_hashref('SELECT * from testtable WHERE testtable_id = ?', {}, $stored->testtable_id);
});
like($raw->{serial1}, qr/château/, "raw data contains unicode, as-is, without transformation (latin1-ish 'château')");
like($raw->{serial1}, qr/\x{2764}/, "raw data contains unicode, as-is, without transformation (utf8-ish '\x{2764}')");
#retrieve what was serialized from DB
undef $stored;
$stored = $rs->find({'testtable_id' => 3});
ok($inflated = $stored->serial1, 'hashref inflation');
is_deeply($inflated, $struct_hash, 'the stored hash and the orginial are equal');
ok($inflated = $stored->serial2, 'arrayref inflation');
is_deeply($inflated, $struct_array, 'the stored array and the orginial are equal');
t/lib/DBICTest.pm view on Meta::CPAN
my $db_file = $self->_sqlite_dbname(%args);
unlink($db_file) if -e $db_file;
unlink($db_file . "-journal") if -e $db_file . "-journal";
mkdir("t/var") unless -d "t/var";
my $dsn = $ENV{"DBICTEST_DSN"} || "dbi:SQLite:${db_file}";
my $dbuser = $ENV{"DBICTEST_DBUSER"} || '';
my $dbpass = $ENV{"DBICTEST_DBPASS"} || '';
my @connect_info = ($dsn, $dbuser, $dbpass, { AutoCommit => 1, sqlite_unicode => 1, %args });
return @connect_info;
}
sub init_schema {
my $self = shift;
my %args = @_;
my $schema;
( run in 0.291 second using v1.01-cache-2.11-cpan-f29a10751f0 )