Passed
Push — master ( 7a8481...6a477e )
by Francis
01:21
created
phpunit/BasicAuthTest.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -22,10 +22,10 @@  discard block
 block discarded – undo
22 22
    * @covers JWT::__construct
23 23
    */
24 24
   public static function setUpBeforeClass(): void {
25
-    self::$ci =& get_instance();
25
+    self::$ci = & get_instance();
26 26
     self::$ci->load->database('mysqli://root@localhost/test_db');
27 27
     self::$ci->load->helper("url");
28
-    $queries = explode("#@@@", file_get_contents(FCPATH . 'application/splints/' . self::PACKAGE . '/phpunit/database.sql'));
28
+    $queries = explode("#@@@", file_get_contents(FCPATH.'application/splints/'.self::PACKAGE.'/phpunit/database.sql'));
29 29
     self::assertTrue(count($queries) > 0);
30 30
     self::$ci->load->database();
31 31
     foreach ($queries as $query) {
@@ -41,7 +41,7 @@  discard block
 block discarded – undo
41 41
     // However, for the purpose of this test, we are going to Hack Code CodeIgniter
42 42
     // with a Splint Config variable to allow us load config files from where
43 43
     // ever we want. This happens below.
44
-    self::$ci->load->add_package_path(APPPATH . 'splints/' . self::PACKAGE . "/phpunit/");
44
+    self::$ci->load->add_package_path(APPPATH.'splints/'.self::PACKAGE."/phpunit/");
45 45
     //self::$ci->config->set_item('st_config_path_prefix', '../splints/' . self::PACKAGE . "/phpunit/config/");
46 46
   }
47 47
   /**
@@ -58,7 +58,7 @@  discard block
 block discarded – undo
58 58
     $_SERVER['PHP_AUTH_PW'] = "012345678901234567890";
59 59
     self::$ci->config->set_item('expected_uri', 'basic/auth');
60 60
     self::$ci->config->set_item('expected_auth', RESTAuth::BASIC);
61
-    $this->expectExceptionMessage('Error ' . RESTResponse::UN_AUTHORIZED . ' in ' . RESTAuth::BASIC);
61
+    $this->expectExceptionMessage('Error '.RESTResponse::UN_AUTHORIZED.' in '.RESTAuth::BASIC);
62 62
     self::$ci->load->splint(self::PACKAGE, '+REST', null, 'basic_rest_2');
63 63
   }
64 64
   /**
Please login to merge, or discard this patch.
phpunit/APIKeyAuthAuthTest.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -22,10 +22,10 @@
 block discarded – undo
22 22
    * @covers JWT::__construct
23 23
    */
24 24
   public static function setUpBeforeClass(): void {
25
-    self::$ci =& get_instance();
25
+    self::$ci = & get_instance();
26 26
     self::$ci->load->database('mysqli://root@localhost/test_db');
27 27
     self::$ci->load->helper("url");
28
-    $queries = explode("#@@@", file_get_contents(FCPATH . 'application/splints/' . self::PACKAGE . '/phpunit/database.sql'));
28
+    $queries = explode("#@@@", file_get_contents(FCPATH.'application/splints/'.self::PACKAGE.'/phpunit/database.sql'));
29 29
     self::assertTrue(count($queries) > 0);
30 30
     self::$ci->load->database();
31 31
     foreach ($queries as $query) {
Please login to merge, or discard this patch.
phpunit/config/rest.php 1 patch
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -11,19 +11,19 @@  discard block
 block discarded – undo
11 11
 
12 12
 $config['auth_callbacks'] = [
13 13
 
14
-  RESTAuth::CUSTOM('X-APP-ID')    => function (&$context, $value):bool {
14
+  RESTAuth::CUSTOM('X-APP-ID')    => function(&$context, $value):bool {
15 15
     return true;
16 16
   },
17 17
 
18
-  RESTAuth::CUSTOM('X-DEVICE-ID') => function (&$context, $value):bool {
18
+  RESTAuth::CUSTOM('X-DEVICE-ID') => function(&$context, $value):bool {
19 19
     return true;
20 20
   },
21 21
 
22
-  RESTAuth::BEARER                => function (&$context, $token):bool {
22
+  RESTAuth::BEARER                => function(&$context, $token):bool {
23 23
     return true;
24 24
   },
25 25
 
26
-  RESTAuth::OAUTH2                => function (&$context, $token):bool {
26
+  RESTAuth::OAUTH2                => function(&$context, $token):bool {
27 27
     return true;
28 28
   }
29 29
 
@@ -38,8 +38,8 @@  discard block
 block discarded – undo
38 38
   },
39 39
 
40 40
   RESTResponse::UN_AUTHORIZED      => function(&$auth):void {
41
-    $ci =& get_instance();
42
-    Assert::assertTrue(uri_string() == $ci->config->item('expected_uri')&& $auth == $ci->config->item('expected_auth'));
41
+    $ci = & get_instance();
42
+    Assert::assertTrue(uri_string() == $ci->config->item('expected_uri') && $auth == $ci->config->item('expected_auth'));
43 43
   },
44 44
 
45 45
   RESTResponse::NOT_ACCEPTABLE     => function(&$auth):void {
Please login to merge, or discard this patch.
helpers/rest_helper.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -2,7 +2,7 @@
 block discarded – undo
2 2
 declare(strict_types=1);
3 3
 
4 4
 if (!function_exists('response')) {
5
-  function response($data=null, int $code=null):RESTResponse
5
+  function response($data = null, int $code = null):RESTResponse
6 6
   {
7 7
     return new RESTResponse($data, $code);
8 8
   }
Please login to merge, or discard this patch.
libraries/RESTResponse.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
    * @var bool
29 29
    */
30 30
   protected $json;
31
-  function __construct($data=null, int $code=null)
31
+  function __construct($data = null, int $code = null)
32 32
   {
33 33
     $this->data = $data;
34 34
     $this->code = $code;
@@ -61,7 +61,7 @@  discard block
 block discarded – undo
61 61
    * @date  2019-11-11
62 62
    * @param boolean    $exit [description]
63 63
    */
64
-  public function send(bool $exit=false):void
64
+  public function send(bool $exit = false):void
65 65
   {
66 66
     http_response_code($this->code ?? 200);
67 67
 
Please login to merge, or discard this patch.
Braces   +9 added lines, -3 removed lines patch added patch discarded remove patch
@@ -65,11 +65,17 @@
 block discarded – undo
65 65
   {
66 66
     http_response_code($this->code ?? 200);
67 67
 
68
-    if ($this->json) header('Content-Type: application/json');
68
+    if ($this->json) {
69
+     header('Content-Type: application/json');
70
+    }
69 71
 
70
-    if ($this->data !== null) echo !$this->json ? $this->data : json_encode($this->data, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
72
+    if ($this->data !== null) {
73
+     echo !$this->json ? $this->data : json_encode($this->data, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
74
+    }
71 75
 
72
-    if ($exit) exit(EXIT_SUCCESS);
76
+    if ($exit) {
77
+     exit(EXIT_SUCCESS);
78
+    }
73 79
   }
74 80
 }
75 81
 ?>
Please login to merge, or discard this patch.
models/RESTModel.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -95,7 +95,7 @@  discard block
 block discarded – undo
95 95
    * @param  string $apiKey [description]
96 96
    * @return array          [description]
97 97
    */
98
-  public function getAPIKeyData(string $apiKey):?object {
98
+  public function getAPIKeyData(string $apiKey): ?object {
99 99
     // Preliminary Check.
100 100
     if ($this->api_key_table == null || $this->api_key_column == null) return null;
101 101
     // Query.
@@ -119,7 +119,7 @@  discard block
 block discarded – undo
119 119
    * @param  string $group  [description]
120 120
    * @return [type]         [description]
121 121
    */
122
-  public function getLimitData(string $client, string $group):?array {
122
+  public function getLimitData(string $client, string $group): ?array {
123 123
     $sql = 'SELECT count, start, (`start` + INTERVAL (1 - TIMESTAMPDIFF(HOUR, UTC_TIMESTAMP(), NOW())) HOUR) AS reset_epoch FROM rest_api_rate_limit WHERE client = ? AND _group = ?';
124 124
     $query = $this->db->query($sql, [$client, $group]);
125 125
     if (!is_scalar($query) && $query->num_rows() > 0) return $query->result_array()[0];
Please login to merge, or discard this patch.
Braces   +12 added lines, -4 removed lines patch added patch discarded remove patch
@@ -81,10 +81,14 @@  discard block
 block discarded – undo
81 81
       $this->db->or_where($this->users_username_column, $username);
82 82
     }
83 83
     $query = $this->db->get();
84
-    if ($query->num_rows() == 0) return false;
84
+    if ($query->num_rows() == 0) {
85
+     return false;
86
+    }
85 87
     // Authenticate.
86 88
     if (password_verify($password, $query->result()[0]->{$this->users_password_column})) {
87
-      if ($this->users_id_column != null) $context->userId = $query->result()[0]->{$this->users_id_column};
89
+      if ($this->users_id_column != null) {
90
+       $context->userId = $query->result()[0]->{$this->users_id_column};
91
+      }
88 92
       return true;
89 93
     }
90 94
     return false;
@@ -97,7 +101,9 @@  discard block
 block discarded – undo
97 101
    */
98 102
   public function getAPIKeyData(string $apiKey):?object {
99 103
     // Preliminary Check.
100
-    if ($this->api_key_table == null || $this->api_key_column == null) return null;
104
+    if ($this->api_key_table == null || $this->api_key_column == null) {
105
+     return null;
106
+    }
101 107
     // Query.
102 108
     $this->db->from($this->api_key_table);
103 109
     $this->db->where($this->api_key_column, $apiKey);
@@ -122,7 +128,9 @@  discard block
 block discarded – undo
122 128
   public function getLimitData(string $client, string $group):?array {
123 129
     $sql = 'SELECT count, start, (`start` + INTERVAL (1 - TIMESTAMPDIFF(HOUR, UTC_TIMESTAMP(), NOW())) HOUR) AS reset_epoch FROM rest_api_rate_limit WHERE client = ? AND _group = ?';
124 130
     $query = $this->db->query($sql, [$client, $group]);
125
-    if (!is_scalar($query) && $query->num_rows() > 0) return $query->result_array()[0];
131
+    if (!is_scalar($query) && $query->num_rows() > 0) {
132
+     return $query->result_array()[0];
133
+    }
126 134
     return null;
127 135
   }
128 136
   /**
Please login to merge, or discard this patch.
libraries/RESTAuth.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
    * [BasicAuth description]
7 7
    * @var string
8 8
    */
9
-  const BASIC   = "Basic";
9
+  const BASIC = "Basic";
10 10
 
11 11
   /**
12 12
    * [API_KEY description]
@@ -30,13 +30,13 @@  discard block
 block discarded – undo
30 30
    * [OAUTH2 description]
31 31
    * @var string
32 32
    */
33
-  const OAUTH2  = "OAUTH2";
33
+  const OAUTH2 = "OAUTH2";
34 34
 
35 35
   /**
36 36
    * [IP description]
37 37
    * @var string
38 38
    */
39
-  const IP      = "IP";
39
+  const IP = "IP";
40 40
   /**
41 41
    * [CUSTOM description]
42 42
    * @param  string $header [description]
Please login to merge, or discard this patch.
libraries/REST.php 2 patches
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -137,16 +137,16 @@  discard block
 block discarded – undo
137 137
    * @param array|null $params Initialization parameters from the Slint system.
138 138
    *                           There's no use for this arg yet.
139 139
    */
140
-  function __construct(?array $params=null)
140
+  function __construct(?array $params = null)
141 141
   {
142
-    $this->ci =& get_instance();
142
+    $this->ci = & get_instance();
143 143
 
144 144
     if ($this->ci->input->is_cli_request()) return;
145 145
 
146 146
     // Load Config If Exists.
147 147
     //$this->ci->config->load('rest', true, true);
148
-    if (is_file(APPPATH . 'config/rest.php')) {
149
-      include APPPATH . 'config/rest.php';
148
+    if (is_file(APPPATH.'config/rest.php')) {
149
+      include APPPATH.'config/rest.php';
150 150
     }
151 151
 
152 152
     $this->config = $config;
@@ -162,7 +162,7 @@  discard block
 block discarded – undo
162 162
 
163 163
     // Load Model.
164 164
     $this->ci->load->splint(self::PACKAGE, '*RESTModel', 'rest_model');
165
-    $this->rest_model =& $this->ci->rest_model;
165
+    $this->rest_model = & $this->ci->rest_model;
166 166
 
167 167
     $this->rest_model->init([
168 168
       'users_table'           => $config['basic_auth']['users_table'] ?? null,
@@ -262,14 +262,14 @@  discard block
 block discarded – undo
262 262
    */
263 263
   private function auth_proceed(bool $success, int $flags):bool
264 264
   {
265
-    if ($flags & self::AUTH_GRAVITY) return $success;
265
+    if ($flags&self::AUTH_GRAVITY) return $success;
266 266
     if ($success) {
267
-      if ($flags & self::AUTH_FINAL) {
267
+      if ($flags&self::AUTH_FINAL) {
268 268
         $this->authPreempted = true;
269 269
         return true;
270 270
       }
271 271
     } else {
272
-      return $flags & self::AUTH_PASSIVE ? true : false;
272
+      return $flags&self::AUTH_PASSIVE ? true : false;
273 273
     }
274 274
   }
275 275
 
@@ -329,7 +329,7 @@  discard block
 block discarded – undo
329 329
   /**
330 330
    * [api_key_auth description]
331 331
    */
332
-  private function api_key_auth(int $flags=self::AUTH_GRAVITY):void
332
+  private function api_key_auth(int $flags = self::AUTH_GRAVITY):void
333 333
   {
334 334
     if (uri_string() == '')  return;
335 335
     $shouldProceed = $this->auth_proceed(false, $flags);
@@ -376,7 +376,7 @@  discard block
 block discarded – undo
376 376
     }
377 377
     // Should we acyually Limit?
378 378
     if ($this->per_hour > 0) {
379
-      $client = hash('md5', $this->ci->input->ip_address() . "%" . $apiKey);
379
+      $client = hash('md5', $this->ci->input->ip_address()."%".$apiKey);
380 380
       $limitData = $this->rest_model->getLimitData($client, '_api_keyed_user');
381 381
       if ($limitData == null) {
382 382
         $limitData = [];
@@ -460,7 +460,7 @@  discard block
 block discarded – undo
460 460
    * [get_authorization_header description]
461 461
    * @return [type] [description]
462 462
    */
463
-  private function get_authorization_header():?string
463
+  private function get_authorization_header(): ?string
464 464
   {
465 465
     if (isset($_SERVER['Authorization'])) {
466 466
       return trim($_SERVER["Authorization"]);
@@ -483,7 +483,7 @@  discard block
 block discarded – undo
483 483
    * [handle_response description]
484 484
    * @param int $code [description]
485 485
    */
486
-  private function handle_response(int $code, $auth=null, ?string $errorReason=null):void
486
+  private function handle_response(int $code, $auth = null, ?string $errorReason = null):void
487 487
   {
488 488
     http_response_code($code);
489 489
     header("Content-Type: application/json");
Please login to merge, or discard this patch.
Braces   +36 added lines, -11 removed lines patch added patch discarded remove patch
@@ -141,7 +141,9 @@  discard block
 block discarded – undo
141 141
   {
142 142
     $this->ci =& get_instance();
143 143
 
144
-    if ($this->ci->input->is_cli_request()) return;
144
+    if ($this->ci->input->is_cli_request()) {
145
+     return;
146
+    }
145 147
 
146 148
     // Load Config If Exists.
147 149
     //$this->ci->config->load('rest', true, true);
@@ -212,9 +214,14 @@  discard block
 block discarded – undo
212 214
   {
213 215
     $auths = null;
214 216
     $auths = $this->config['auth'] ?? null;
215
-    if ($auths) $auths = is_array($auths) ? $auths : [$auths];
217
+    if ($auths) {
218
+     $auths = is_array($auths) ? $auths : [$auths];
219
+    }
216 220
 
217
-    if (!$auths) return; // No authentication(s) to carry out.
221
+    if (!$auths) {
222
+     return;
223
+    }
224
+    // No authentication(s) to carry out.
218 225
 
219 226
     /**
220 227
      * $this->process_auth() terminates the script if authentication fails
@@ -225,7 +232,9 @@  discard block
 block discarded – undo
225 232
      */
226 233
 
227 234
     foreach ($auths as $key => $auth) {
228
-      if ($this->authPreempted) break;
235
+      if ($this->authPreempted) {
236
+       break;
237
+      }
229 238
       if (is_numeric($key)) {
230 239
         $this->process_auth($auth, self::AUTH_GRAVITY);
231 240
       } else {
@@ -262,7 +271,9 @@  discard block
 block discarded – undo
262 271
    */
263 272
   private function auth_proceed(bool $success, int $flags):bool
264 273
   {
265
-    if ($flags & self::AUTH_GRAVITY) return $success;
274
+    if ($flags & self::AUTH_GRAVITY) {
275
+     return $success;
276
+    }
266 277
     if ($success) {
267 278
       if ($flags & self::AUTH_FINAL) {
268 279
         $this->authPreempted = true;
@@ -323,15 +334,23 @@  discard block
 block discarded – undo
323 334
   {
324 335
     $username = $_SERVER['PHP_AUTH_USER'] ?? null;
325 336
     $password = $_SERVER['PHP_AUTH_PW'] ?? null;
326
-    if (!$this->auth_proceed(!$username || !$password, $flags)) $this->handle_response(RESTResponse::BAD_REQUEST, RESTAuth::BASIC); // Exits.
327
-    if (!$this->auth_proceed($this->rest_model->basicAuth($this, $username, $password), $flags)) $this->handle_response(RESTResponse::UN_AUTHORIZED, RESTAuth::BASIC); // Exits.
337
+    if (!$this->auth_proceed(!$username || !$password, $flags)) {
338
+     $this->handle_response(RESTResponse::BAD_REQUEST, RESTAuth::BASIC);
339
+    }
340
+    // Exits.
341
+    if (!$this->auth_proceed($this->rest_model->basicAuth($this, $username, $password), $flags)) {
342
+     $this->handle_response(RESTResponse::UN_AUTHORIZED, RESTAuth::BASIC);
343
+    }
344
+    // Exits.
328 345
   }
329 346
   /**
330 347
    * [api_key_auth description]
331 348
    */
332 349
   private function api_key_auth(int $flags=self::AUTH_GRAVITY):void
333 350
   {
334
-    if (uri_string() == '')  return;
351
+    if (uri_string() == '') {
352
+     return;
353
+    }
335 354
     $shouldProceed = $this->auth_proceed(false, $flags);
336 355
 
337 356
     if (!$this->ci->input->get_request_header($this->apiKeyHeader, true) && !$shouldProceed) {
@@ -349,7 +368,9 @@  discard block
 block discarded – undo
349 368
 
350 369
     $this->apiKey = $apiKey;
351 370
 
352
-    if (!$this->auth_proceed(true, $flags)) return;
371
+    if (!$this->auth_proceed(true, $flags)) {
372
+     return;
373
+    }
353 374
 
354 375
     // ==== API KEY Auth Passed ==== //
355 376
 
@@ -410,7 +431,9 @@  discard block
 block discarded – undo
410 431
     // Trunctate Rate Limit Data.
411 432
     $this->rest_model->truncateRatelimitData();
412 433
     // Check Whitelist.
413
-    if (in_array($this->ci->input->ip_address(), $this->whitelist)) return;
434
+    if (in_array($this->ci->input->ip_address(), $this->whitelist)) {
435
+     return;
436
+    }
414 437
     // Should we acyually Limit?
415 438
     if ($this->ip_per_hour > 0) {
416 439
       $client = hash('md5', $this->ci->input->ip_address());
@@ -490,7 +513,9 @@  discard block
 block discarded – undo
490 513
     if (isset($this->config['response_callbacks'][$code])) {
491 514
       $this->config['response_callbacks'][$code]($auth, $errorReason);
492 515
     }
493
-    if (ENVIRONMENT != 'testing') exit($code);
516
+    if (ENVIRONMENT != 'testing') {
517
+     exit($code);
518
+    }
494 519
     throw new Exception("Error $code in $auth", $code);
495 520
   }
496 521
 }
Please login to merge, or discard this patch.