Example #1
0
 public function testAPIResult()
 {
     $result = APIResult::success("content");
     $this->assertEquals(APIResult::STATUS_CALL_OK, $result->status, "Success result status failed");
     $this->assertEquals("content", $result->content, "Success result content failed");
     $result = APIResult::reject("content");
     $this->assertEquals(APIResult::STATUS_CALL_REJECTED, $result->status, "Rejected result status failed");
     $this->assertEquals("content", $result->content, "Rejected result content failed");
     $result = APIResult::fail("content");
     $this->assertEquals(APIResult::STATUS_CALL_ERROR, $result->status, "Fail result status failed");
     $this->assertEquals("content", $result->content, "Fail result content failed");
 }
Example #2
0
 /** Run everything an return the result as APIResult. */
 public function run($action, $input)
 {
     // Check user login
     if (!api_user_login() && !is_user_logged_in()) {
         return APIResult::reject(APIError::$REJ_NOT_LOGGED);
     }
     // Check requested api, existing without illegal characters
     if ($this->api === null || $this->api == "" || strpos("..", $this->api) !== false || strpos("/", $this->api) !== false || !file_exists(PT::$ABSPATH . "/inc/data/api/" . $this->api . ".php")) {
         return APIResult::reject(APIError::$REJ_WRONG_API);
     }
     // Run the api
     require_once PT::$ABSPATH . "/inc/data/api/" . $this->api . ".php";
     $apiClass = new \ReflectionClass("\\Pasteque\\" . $this->api);
     $api = $apiClass->newInstance($action, $input);
     $api->run();
     return $api->getResult();
 }
Example #3
0
 /** Set the result to a succes (should be called in run())). */
 protected function succeed($result)
 {
     $this->result = APIResult::success($result);
 }