- insert method created_at and updated_at option...
...can receive scalar reference
| ... | ... | 
                  @@ -1,4 +1,7 @@  | 
              
| 1 | 1 | 
                  0.1740  | 
              
| 2 | 
                  + - insert method created_at and updated_at option can receive scalar reference  | 
              |
| 3 | 
                  + - update method updated_at option can receive scalar reference  | 
              |
| 4 | 
                  + - select column option [COLUMN => ALIAS] syntax is DEPRECATED!  | 
              |
| 2 | 5 | 
                  - added EXPERIMENTAL q method  | 
              
| 3 | 6 | 
                  - execute method id option is DEPRECATED!  | 
              
| 4 | 7 | 
                  0.1739  | 
              
| ... | ... | 
                  @@ -631,7 +631,8 @@ sub insert {
                 | 
              
| 631 | 631 | 
                  # Created time and updated time  | 
              
| 632 | 632 | 
                  my @timestamp_cleanup;  | 
              
| 633 | 633 | 
                       if (defined $opt{created_at} || defined $opt{updated_at}) {
                 | 
              
| 634 | 
                  - my $now = $self->now->();  | 
              |
| 634 | 
                  + my $now = $self->now;  | 
              |
| 635 | 
                  + $now = $now->() if ref $now eq 'CODE';  | 
              |
| 635 | 636 | 
                           if (defined $opt{created_at}) {
                 | 
              
| 636 | 637 | 
                               $param->{$opt{created_at}} = $now;
                 | 
              
| 637 | 638 | 
                               push @timestamp_cleanup, $opt{created_at};
                 | 
              
| ... | ... | 
                  @@ -922,6 +923,8 @@ sub select {
                 | 
              
| 922 | 923 | 
                  $column = $self->column(%$column) if ref $column eq 'HASH';  | 
              
| 923 | 924 | 
                  }  | 
              
| 924 | 925 | 
                               elsif (ref $column eq 'ARRAY') {
                 | 
              
| 926 | 
                  + warn "select column option [COLUMN => ALIAS] syntax is DEPRECATED!" .  | 
              |
| 927 | 
                  + "use q method to quote the value";  | 
              |
| 925 | 928 | 
                                   if (@$column == 3 && $column->[1] eq 'as') {
                 | 
              
| 926 | 929 | 
                  warn "[COLUMN, as => ALIAS] is DEPRECATED! use [COLUMN => ALIAS]";  | 
              
| 927 | 930 | 
                  splice @$column, 1, 1;  | 
              
| ... | ... | 
                  @@ -1128,6 +1131,8 @@ sub update {
                 | 
              
| 1128 | 1131 | 
                  # Created time and updated time  | 
              
| 1129 | 1132 | 
                  my @timestamp_cleanup;  | 
              
| 1130 | 1133 | 
                       if (defined $opt{updated_at}) {
                 | 
              
| 1134 | 
                  + my $now = $self->now;  | 
              |
| 1135 | 
                  + $now = $now->() if ref $now eq 'CODE';  | 
              |
| 1131 | 1136 | 
                           $param->{$opt{updated_at}} = $self->now->();
                 | 
              
| 1132 | 1137 | 
                           push @timestamp_cleanup, $opt{updated_at};
                 | 
              
| 1133 | 1138 | 
                  }  | 
              
| ... | ... | 
                  @@ -3449,6 +3454,7 @@ L<DBIx::Custom>  | 
              
| 3449 | 3454 | 
                  update_param_tag # will be removed at 2017/1/1  | 
              
| 3450 | 3455 | 
                   | 
              
| 3451 | 3456 | 
                  # Options  | 
              
| 3457 | 
                  + select column option [COLUMN => ALIAS] syntax # will be removed 2017/1/1  | 
              |
| 3452 | 3458 | 
                  execute method id option # will be removed 2017/1/1  | 
              
| 3453 | 3459 | 
                  update timestamp option # will be removed 2017/1/1  | 
              
| 3454 | 3460 | 
                  insert timestamp option # will be removed 2017/1/1  | 
              
| ... | ... | 
                  @@ -58,15 +58,38 @@ $result = $dbi->execute('select * from table1;');
                 | 
              
| 58 | 58 | 
                  $rows = $result->all;  | 
              
| 59 | 59 | 
                   is_deeply($rows, [{key1 => 1, key2 => 4}], "basic");
                 | 
              
| 60 | 60 | 
                   | 
              
| 61 | 
                  +  | 
              |
| 62 | 
                  +test 'insert created_at and updated_at scalar reference';  | 
              |
| 61 | 63 | 
                  $dbi = DBIx::Custom->connect;  | 
              
| 62 | 64 | 
                   eval { $dbi->execute('drop table table1') };
                 | 
              
| 63 | 
                  -$dbi->execute('create table table1 (key1 varchar, key2 varchar, primary key(key1));');
                 | 
              |
| 64 | 
                  -$dbi->insert({key1 => 1, key2 => 2}, table => 'table1');
                 | 
              |
| 65 | 
                  -$dbi->update({key2 => 4}, table => 'table1',
                 | 
              |
| 66 | 
                  -  where => {key1 => 1}, prefix => 'or replace');
                 | 
              |
| 67 | 
                  -$result = $dbi->execute('select * from table1;');
                 | 
              |
| 68 | 
                  -$rows = $result->all;  | 
              |
| 69 | 
                  -is_deeply($rows, [{key1 => 1, key2 => 4}], "basic");
                 | 
              |
| 65 | 
                  +$dbi->execute('create table table1 (key1, key2, key3)');
                 | 
              |
| 66 | 
                  +$dbi->now(\"datetime('now')");
                 | 
              |
| 67 | 
                  +$dbi->insert({key1 => \"datetime('now')"}, created_at => 'key2', updated_at => 'key3', table => 'table1');
                 | 
              |
| 68 | 
                  +$result = $dbi->select(table => 'table1');  | 
              |
| 69 | 
                  +$row = $result->one;  | 
              |
| 70 | 
                  +is($row->{key1}, $row->{key2});
                 | 
              |
| 71 | 
                  +is($row->{key1}, $row->{key3});
                 | 
              |
| 72 | 
                  +  | 
              |
| 73 | 
                  +test 'insert created_at and updated_at scalar reference';  | 
              |
| 74 | 
                  +$dbi = DBIx::Custom->connect;  | 
              |
| 75 | 
                  +eval { $dbi->execute('drop table table1') };
                 | 
              |
| 76 | 
                  +$dbi->execute('create table table1 (key1, key2, key3)');
                 | 
              |
| 77 | 
                  +$dbi->now(\"datetime('now')");
                 | 
              |
| 78 | 
                  +$dbi->insert({key1 => \"datetime('now')"}, created_at => 'key2', updated_at => 'key3', table => 'table1');
                 | 
              |
| 79 | 
                  +$result = $dbi->select(table => 'table1');  | 
              |
| 80 | 
                  +$row = $result->one;  | 
              |
| 81 | 
                  +is($row->{key1}, $row->{key2});
                 | 
              |
| 82 | 
                  +is($row->{key1}, $row->{key3});
                 | 
              |
| 83 | 
                  +  | 
              |
| 84 | 
                  +test 'update updated_at scalar reference';  | 
              |
| 85 | 
                  +$dbi = DBIx::Custom->connect;  | 
              |
| 86 | 
                  +eval { $dbi->execute('drop table table1') };
                 | 
              |
| 87 | 
                  +$dbi->execute('create table table1 (key1, key2)');
                 | 
              |
| 88 | 
                  +$dbi->now(\"datetime('now')");
                 | 
              |
| 89 | 
                  +$dbi->insert({key1 => \"datetime('now')"}, updated_at => 'key2', table => 'table1');
                 | 
              |
| 90 | 
                  +$result = $dbi->select(table => 'table1');  | 
              |
| 91 | 
                  +$row = $result->one;  | 
              |
| 92 | 
                  +is($row->{key1}, $row->{key2});
                 | 
              |
| 70 | 93 | 
                   | 
              
| 71 | 94 | 
                  test 'DBIX_CUSTOM_DEBUG ok';  | 
              
| 72 | 95 | 
                   {
                 |