diff options
Diffstat (limited to 'tests/it_dbi.t')
-rwxr-xr-x | tests/it_dbi.t | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/it_dbi.t b/tests/it_dbi.t index 006c4d8..961a747 100755 --- a/tests/it_dbi.t +++ b/tests/it_dbi.t @@ -10,6 +10,7 @@ $dbi->query('create temporary table it_dbi_test ( ID int not null auto_increment, x int, foo varchar(42), + dyncols LONGBLOB, primary key(ID) );'); @@ -315,3 +316,14 @@ is( array(1, "franz"), "localized field foobar_fr" ); + +# +# Test saving/retrieving/matching values in dynamically created columns +# +$record = new it_dbi_test; +$record->replace('ID' => 5, 'key1' => "val1"); is($record->key1, "val1"); +$record->update('key2' => "val2"); is($record->key1, "val1"); is($record->key2, "val2"); +$record->update('-key3' => "2*2"); is($record->key1, "val1"); is($record->key2, "val2"); is($record->key3, 4); +$record->update('key1' => "val0"); is($record->key1, "val0"); is($record->key2, "val2"); is($record->key3, 4); +$record->replace('ID' => 6, 'key4' => "val4"); is($record->key4, "val4"); +$record->select('key2' => "val2"); is($record->key2, "val2"); is($record->key4, null, "clear previous fields"); |