@@ -34,7 +34,7 @@ private function action($method,$url,$data='')
3434 'tenancy_function ' =>function ($ action ,$ database ,$ table ,$ column ) { return ($ table =='users ' &&$ column =='id ' )?1 :null ; },
3535 'input_sanitizer ' =>function ($ action ,$ database ,$ table ,$ column ,$ type ,$ value ) { return is_string ($ value )?strip_tags ($ value ):$ value ; },
3636 'input_validator ' =>function ($ action ,$ database ,$ table ,$ column ,$ type ,$ value ,$ context ) { return ($ column =='category_id ' && !is_numeric ($ value ))?'must be numeric ' :true ; },
37- 'before ' =>function (&$ action ,&$ database ,&$ table ,&$ id ,&$ input ) { if ($ action =='create ' && $ input !==false ) $ input ->created_at = '2013-12-11 10:09:08 ' ; },
37+ 'before ' =>function (&$ action ,&$ database ,&$ table ,&$ id ,&$ input ) { if ($ action =='create ' && $ input !==false ) $ input ->created_at = '2013-12-11 10:09:08 ' ; else if ( $ action == ' delete ' && $ table == ' products ' ) { $ action = ' update ' ; $ input = ( object ) array ( ' deleted_at ' => ' 2013-12-11 10:09:08 ' ); } },
3838 'after ' =>function ($ action ,$ database ,$ table ,$ id ,$ input ,$ output ) { file_put_contents ('log.txt ' ,var_export (array ($ action ,$ database ,$ table ,$ id ,$ input ,$ output ),true ),FILE_APPEND ); },
3939 // for tests
4040 'method ' =>$ method ,
@@ -790,4 +790,13 @@ public function testAddProducts()
790790 $ test ->get ('/products/2 ' );
791791 $ test ->expect ('{"id":2,"name":"Laptop","price":"1299.99","properties":{},"created_at":"2013-12-11 10:09:08"} ' );
792792 }
793+
794+ public function testSoftDeleteProduct ()
795+ {
796+ $ test = new API ($ this );
797+ $ test ->delete ('/products/2 ' );
798+ $ test ->expect ('2 ' );
799+ //$test->get('/products/2');
800+ //$test->expect('{"id":2,"name":"Laptop","price":"1299.99","properties":{},"created_at":"2013-12-11 10:09:08"}');
801+ }
793802}
0 commit comments