MessageTest.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. /**
  3. * Lithium: the most rad php framework
  4. *
  5. * @copyright Copyright 2013, Union of RAD (http://union-of-rad.org)
  6. * @license http://opensource.org/licenses/bsd-license.php The BSD License
  7. */
  8. namespace lithium\tests\cases\net;
  9. use lithium\net\Message;
  10. class MessageTest extends \lithium\test\Unit {
  11. public $request = null;
  12. public function setUp() {
  13. $this->message = new Message();
  14. }
  15. public function testBody() {
  16. $expected = "Part 1";
  17. $result = $this->message->body('Part 1');
  18. $this->assertEqual($expected, $result);
  19. $expected = "Part 1\r\nPart 2";
  20. $result = $this->message->body('Part 2');
  21. $this->assertEqual($expected, $result);
  22. $expected = "Part 1\r\nPart 2\r\nPart 3\r\nPart 4";
  23. $result = $this->message->body(array('Part 3', 'Part 4'));
  24. $this->assertEqual($expected, $result);
  25. $expected = array('Part 1', 'Part 2', 'Part 3', 'Part 4');
  26. $result = $this->message->body;
  27. $this->assertEqual($expected, $result);
  28. }
  29. public function testBodyBuffer() {
  30. $expected = array('P', 'a', 'r', 't', ' ', '1');
  31. $result = $this->message->body('Part 1', array('buffer' => 1));
  32. $this->assertEqual($expected, $result);
  33. }
  34. public function testToArray() {
  35. $expected = array(
  36. 'scheme' => 'tcp',
  37. 'host' => 'localhost',
  38. 'port' => null,
  39. 'path' => null,
  40. 'username' => null,
  41. 'password' => null,
  42. 'body' => array()
  43. );
  44. $result = $this->message->to('array');
  45. $this->assertEqual($expected, $result);
  46. }
  47. public function testToUrl() {
  48. $expected = "tcp://localhost";
  49. $result = $this->message->to('url');
  50. $this->assertEqual($expected, $result);
  51. }
  52. public function testToContext() {
  53. $expected = array('tcp' => array('content' => null, 'ignore_errors' => true));
  54. $result = $this->message->to('context');
  55. $this->assertEqual($expected, $result);
  56. }
  57. public function testToString() {
  58. $expected = "woohoo";
  59. $this->message->body($expected);
  60. $result = (string) $this->message;
  61. $this->assertEqual($expected, $result);
  62. $result = $this->message->to('string');
  63. $this->assertEqual($expected, $result);
  64. }
  65. public function testConstruct() {
  66. $expected = array(
  67. 'scheme' => 'http',
  68. 'host' => 'localhost',
  69. 'port' => '80',
  70. 'path' => null,
  71. 'username' => null,
  72. 'password' => null,
  73. 'body' => array()
  74. );
  75. $message = new Message($expected);
  76. $result = $message->to('array');
  77. $this->assertEqual($expected, $result);
  78. }
  79. }
  80. ?>