Guest User

laravel phpunit controller testing

a guest
Aug 17th, 2012
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.50 KB | None | 0 0
  1. <?php
  2.  
  3. require('test_helper.php');
  4.  
  5. abstract class ControllerTestCase extends PHPUnit_Framework_TestCase {
  6.  
  7.     public function call($destination, $parameters = array(), $method = 'GET') {
  8.  
  9.         \Laravel\Request::foundation()->server->add(array(
  10.             'REQUEST_METHOD' => $method,
  11.         ));
  12.  
  13.         return \Laravel\Routing\Controller::call($destination, $parameters);
  14.     }
  15.     /*
  16.      * cleans the previous request so that the next request
  17.      * wont get piled on and merged
  18.      */
  19.     private function clean_request(){
  20.         $request = \Laravel\Request::foundation()->request;
  21.         $req_keys = $request->keys();
  22.        
  23.         foreach($req_keys as $key){
  24.             $request->remove($key);
  25.         }
  26.     }
  27.     public function get($destination, $parameters = array()) {
  28.         return $this->call($destination, $parameters, 'GET');
  29.     }
  30.  
  31.     public function post($destination, $post_data, $parameters = array()) {
  32.         $this->clean_request();
  33.         \Laravel\Request::foundation()->request->add($post_data);
  34.  
  35.         return $this->call($destination, $parameters, 'POST');
  36.     }
  37.  
  38.     public function put($destination, $put_data, $parameters = array()) {
  39.         $this->clean_request();
  40.         \Laravel\Request::foundation()->request->add($put_data);
  41.  
  42.         return $this->call($destination, $parameters, 'PUT');
  43.     }
  44.  
  45.     public function delete($destination, $parameters = array()) {
  46.         return $this->call($destination, $parameters, 'DELETE');
  47.     }
  48.  
  49. }
Advertisement
Add Comment
Please, Sign In to add comment