/** * @depends testMakeCaptcha */ public function testCheckCaptcha() { $capTime = $_SERVER['REQUEST_TIME']; $this->assertEquals(self::EXIST_MOBILE, $this->mdu->checkCaptcha('15280255990', 1, '1234', $capTime)); $this->assertEquals(self::EXIST_MOBILE, $this->mdu->checkCaptcha('15280255990', 11, '1234', $capTime)); $this->assertEquals(self::NON_EXIST_MOBILE, $this->mdu->checkCaptcha('15280255992', 3, '1234', $capTime)); $this->assertEquals(self::NON_EXIST_MOBILE, $this->mdu->checkCaptcha('15280255992', 7, '1234', $capTime)); $this->assertEquals(self::NON_EXIST_MOBILE, $this->mdu->checkCaptcha('15280255992', 9, '1234', $capTime)); parent::pdo()->exec('UPDATE cloud_mobi_captcha SET `mc_captcha` = "6789", `mc_validtime` = 10 WHERE `mc_mobi` = "15280255991"'); $this->assertEquals(self::ERROR_CAPTCHA, $this->mdu->checkCaptcha('15280255991', 1, '1234', $capTime)); $this->assertEquals(self::INVALID_CAPTCHA, $this->mdu->checkCaptcha('15280255991', 1, '6789', $capTime)); // 当前时间小于验证码添加时间 $mcAddtime = $capTime + 60; parent::pdo()->exec('UPDATE cloud_mobi_captcha SET `mc_validtime` = 0, `mc_addtime` = ' . $mcAddtime . ' WHERE `mc_mobi` = "15280255991"'); $this->assertEquals(self::INVALID_CAPTCHA, $this->mdu->checkCaptcha('15280255991', 1, '6789', $capTime)); // 验证码过期 $mcAddtime = $capTime - $this->di['sysconfig']['capTime'] - 1000; parent::pdo()->exec('UPDATE cloud_mobi_captcha SET `mc_validtime` = 0, `mc_addtime` = ' . $mcAddtime . ' WHERE `mc_mobi` = "15280255991"'); $this->assertEquals(self::INVALID_CAPTCHA, $this->mdu->checkCaptcha('15280255991', 1, '6789', $capTime)); // 验证码有效 $mcAddtime = $capTime - $this->di['sysconfig']['capTime'] + 1000; parent::pdo()->exec('UPDATE cloud_mobi_captcha SET `mc_validtime` = 0, `mc_addtime` = ' . $mcAddtime . ' WHERE `mc_mobi` = "15280255991"'); $this->assertEquals(self::SUCCESS, $this->mdu->checkCaptcha('15280255991', 1, '6789', $capTime)); }