MessageBodyTest.php 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. if (!defined('PHPUnit_MAIN_METHOD')) {
  3. define('PHPUnit_MAIN_METHOD', 'Zend_Amf_Value_MessageBodyTest::main');
  4. }
  5. require_once dirname(__FILE__) . '/../../../TestHelper.php';
  6. require_once 'Zend/Amf/Value/MessageBody.php';
  7. /**
  8. * Test case for Zend_Amf_Value_MessageBody
  9. *
  10. * @package Zend_Amf
  11. * @subpackage UnitTests
  12. * @version $Id$
  13. */
  14. class Zend_Amf_Value_MessageBodyTest extends PHPUnit_Framework_TestCase
  15. {
  16. /**
  17. * Runs the test methods of this class.
  18. *
  19. * @return void
  20. */
  21. public static function main()
  22. {
  23. $suite = new PHPUnit_Framework_TestSuite("Zend_Amf_Value_MessageBodyTest");
  24. $result = PHPUnit_TextUI_TestRunner::run($suite);
  25. }
  26. public function setUp()
  27. {
  28. $this->body = new Zend_Amf_Value_MessageBody('/foo', '/bar', 'data');
  29. }
  30. public function testMessageBodyShouldAllowSettingData()
  31. {
  32. $this->assertEquals('data', $this->body->getData());
  33. $this->body->setData('foobar');
  34. $this->assertEquals('foobar', $this->body->getData());
  35. }
  36. public function testMessageBodyShouldAttachDataAsIs()
  37. {
  38. $object = new Zend_Amf_Value_MessageBodyTest_SerializableData();
  39. $this->body->setData($object);
  40. $this->assertSame($object, $this->body->getData());
  41. }
  42. public function testReplyMethodShouldModifyTargetUri()
  43. {
  44. $this->body->setReplyMethod('?action=bar');
  45. $this->assertEquals('/foo?action=bar', $this->body->getTargetUri());
  46. }
  47. public function testReplyMethodShouldInsertPathSeparatorIfNoQueryStringProvided()
  48. {
  49. $this->body->setReplyMethod('bar');
  50. $this->assertEquals('/foo/bar', $this->body->getTargetUri());
  51. }
  52. public function testPassingNullToTargetUriShouldResultInEmptyString()
  53. {
  54. $this->body->setTargetUri(null);
  55. $this->assertSame('', $this->body->getTargetUri());
  56. }
  57. }
  58. class Zend_Amf_Value_MessageBodyTest_SerializableData
  59. {
  60. public function __toString()
  61. {
  62. return __CLASS__;
  63. }
  64. }
  65. if (PHPUnit_MAIN_METHOD == 'Zend_Amf_Value_MessageBodyTest::main') {
  66. Zend_Amf_Value_MessageBodyTest::main();
  67. }