Esempio n. 1
0
 public function testLongRequest()
 {
     $ip = '2.2.2.2';
     // test 100 requests per 600 last seconds
     for ($i = 1; $i <= 100; $i++) {
         $request = new CsbRequest();
         $request->ip = ip2long($ip);
         $request->time = date('Y-m-d H:i:s', strtotime("-" . $i * 5 . " second"));
         $request->save();
     }
     CsbRequest::model()->checkLongIntervals();
     // check logs
     $this->assertEquals(1, CsbIpInfo::model()->count('ip = :ip', array(':ip' => ip2long($ip))));
     $this->assertEquals(1, CsbLog::model()->count('ip = :ip', array(':ip' => ip2long($ip))));
 }
Esempio n. 2
0
 /**
  * Log new request
  * @param $ip
  * @return int
  */
 public static function newRequest($ip)
 {
     $row = new CsbRequest();
     $row->time = date('Y-m-d H:i:s');
     $row->ip = ip2long($ip);
     $row->save();
 }