TokenTest.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. App::import('Token', 'Tools.Model');
  3. App::uses('MyCakeTestCase', 'Tools.TestSuite');
  4. class TokenTest extends MyCakeTestCase {
  5. public $Token = null;
  6. public $fixtures = array('plugin.tools.token');
  7. public function setUp() {
  8. $this->Token = ClassRegistry::init('Tools.Token');
  9. }
  10. public function testTokenInstance() {
  11. $this->assertTrue(is_a($this->Token, 'Token'));
  12. }
  13. public function testGenerateKey() {
  14. $key = $this->Token->generateKey(4);
  15. pr($key);
  16. $this->assertTrue(!empty($key) && strlen($key) === 4);
  17. }
  18. public function testNewKeySpendKey() {
  19. $key = $this->Token->newKey('test', null, null, 'xyz');
  20. $this->assertTrue(!empty($key));
  21. $res = $this->Token->useKey('test', $key);
  22. pr($res);
  23. $this->assertTrue(!empty($res));
  24. $res = $this->Token->useKey('test', $key);
  25. pr($res);
  26. $this->assertTrue(!empty($res) && !empty($res['Token']['used']));
  27. $res = $this->Token->useKey('test', $key.'x');
  28. $this->assertFalse($res);
  29. $res = $this->Token->useKey('testx', $key);
  30. $this->assertFalse($res);
  31. }
  32. public function testGarbigeCollector() {
  33. $data = array(
  34. 'created' => date(FORMAT_DB_DATETIME, time()-3*MONTH),
  35. 'type' => 'y',
  36. 'key' => 'x'
  37. );
  38. $this->Token->create();
  39. $this->Token->save($data, false);
  40. $count = $this->Token->find('count');
  41. $this->Token->garbigeCollector();
  42. $count2 = $this->Token->find('count');
  43. $this->assertTrue($count > $count2);
  44. }
  45. }