QurlTest.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. App::uses('Qurl', 'Tools.Model');
  3. App::uses('MyCakeTestCase', 'Tools.TestSuite');
  4. App::uses('Router', 'Routing');
  5. class QurlTest extends MyCakeTestCase {
  6. public $Qurl = null;
  7. public $fixtures = array('plugin.tools.qurl');
  8. public function setUp() {
  9. parent::setUp();
  10. $this->Qurl = ClassRegistry::init('Tools.Qurl');
  11. }
  12. public function testQurlInstance() {
  13. $this->assertInstanceOf('Qurl', $this->Qurl);
  14. }
  15. public function testGenerate() {
  16. $url = Router::url(array('admin' => false, 'plugin' => 'tools', 'controller' => 'qurls', 'action' => 'go'), true) . '/';
  17. $this->debug($url);
  18. $this->assertNotEmpty($url);
  19. //$this->assertContains('/tools/qurl/go', $url);
  20. $res = $this->Qurl->url(array('controller' => 'test', 'action' => 'foo', 'bar'), array('note' => 'x'));
  21. $this->debug($res);
  22. $this->assertTrue(is_string($res) && !empty($res));
  23. $this->assertTrue(strpos($res, $url) === 0);
  24. $res = $this->Qurl->url('/test/foo/bar');
  25. $this->debug($res);
  26. $this->assertTrue(is_string($res) && !empty($res));
  27. }
  28. public function testUse() {
  29. $key = $this->Qurl->generate(array('controller' => 'test', 'action' => 'foo', 'bar'), array('note' => 'x'));
  30. $res = $this->Qurl->translate($key);
  31. $this->assertTrue(is_array($res) && !empty($res));
  32. $this->assertSame('x', $res['Qurl']['note']);
  33. $this->assertTrue(is_array($res['Qurl']['content']));
  34. $key = $this->Qurl->generate('/test/foo/bar');
  35. $res = $this->Qurl->translate($key);
  36. $this->assertTrue(is_array($res) && !empty($res));
  37. $res = $this->Qurl->translate('foobar');
  38. $this->assertFalse($res);
  39. }
  40. //TODO
  41. }