Exemplo n.º 1
0
 /**
  * Constructor.
  */
 public function __construct()
 {
     $methods = \Sledgehammer\get_public_methods($this);
     foreach ($methods as $index => $method) {
         if (substr($method, 0, 1) == '_') {
             unset($methods[$index]);
             // Functies die beginnen met een "_" uit de publicMethods halen
         }
     }
     $this->publicMethods = array_diff($methods, array('execute', 'getPath', 'file', 'folder', 'onFileNotFound', 'onFolderNotFound', 'getDocument'));
     // Prevent API methods from being called via a public url.
 }
Exemplo n.º 2
0
 public function test_AutoCompleteHelper()
 {
     $repoBase = new Repository();
     $repoBase->registerBackend(new DatabaseRepositoryBackend($this->dbLink));
     $filename = \Sledgehammer\TMP_DIR . 'Test_AutoCompleteRepository.php';
     $class = 'AutoCompleteTestRepository';
     $repoBase->writeAutoCompleteHelper($filename, $class);
     include $filename;
     $methods = array_diff(\Sledgehammer\get_public_methods($class), \Sledgehammer\get_public_methods(Repository::class));
     sort($methods);
     $this->assertEquals($methods, array('allCustomers', 'allGroups', 'allOrders', 'createCustomer', 'createGroup', 'createOrder', 'deleteCustomer', 'deleteGroup', 'deleteOrder', 'getCustomer', 'getGroup', 'getOrder', 'oneCustomer', 'oneGroup', 'oneOrder', 'reloadCustomer', 'reloadCustomers', 'reloadGroup', 'reloadGroups', 'reloadOrder', 'reloadOrders', 'saveCustomer', 'saveGroup', 'saveOrder'));
     $repo = new \AutoCompleteTestRepository();
     $repo->registerBackend(new DatabaseRepositoryBackend($this->dbLink));
     // @todo? Write serialized backends into AutoGenerated class?
     $c1 = $repo->getCustomer(1);
     $this->assertEquals($c1->name, 'Bob Fanger');
     $c1->name = 'Charlie Fanger';
     $repo->saveCustomer($c1);
     $this->assertLastQuery("UPDATE customers SET name = 'Charlie Fanger' WHERE id = 1");
     $c1->orders = array();
     $c1->ratings = array();
     $c1->groups = array();
     $repo->saveCustomer($c1);
     $repo->deleteCustomer($c1);
     $this->assertLastQuery('DELETE FROM customers WHERE id = 1');
 }