From 01ce86d79be6d17bbf011826a77086e50652105b Mon Sep 17 00:00:00 2001 From: Urban Müller Date: Thu, 10 Nov 2016 15:48:46 +0100 Subject: allow dynamic columns --- tests/it_dbi.t | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'tests') 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"); -- cgit v1.2.3