EscapeSequenceWithParameterBytesTest.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. use \Bramus\Ansi\ControlFunctions\Enums\C0;
  3. use \Bramus\Ansi\ControlSequences\EscapeSequences\SGR as EscapeSequenceSGR;
  4. use \Bramus\Ansi\ControlSequences\EscapeSequences\Enums\FinalByte;
  5. use \Bramus\Ansi\ControlSequences\EscapeSequences\Enums\SGR;
  6. class EscapeSequenceWithParameterBytesTest extends PHPUnit_Framework_TestCase
  7. {
  8. public function testParameterBytesSingle()
  9. {
  10. $es = new EscapeSequenceSGR(0);
  11. $this->assertEquals(
  12. $es->getParameterBytes(),
  13. 0
  14. );
  15. $this->assertEquals(
  16. $es->get(),
  17. C0::ESC . '[' . 0 . FinalByte::SGR
  18. );
  19. }
  20. public function testParameterBytesSingleAdd()
  21. {
  22. $es = new EscapeSequenceSGR(0);
  23. // Add a parameter byte
  24. $es->addParameterByte(1);
  25. $this->assertEquals(
  26. $es->getParameterBytes(),
  27. '01'
  28. );
  29. $this->assertEquals(
  30. $es->get(),
  31. C0::ESC . '[' . '0;1' . FinalByte::SGR
  32. );
  33. }
  34. public function testParameterBytesArray()
  35. {
  36. $es = new EscapeSequenceSGR(array(0, 1));
  37. // Check for new Final Byte
  38. $this->assertEquals(
  39. $es->getParameterBytes(),
  40. '01'
  41. );
  42. $this->assertEquals(
  43. $es->get(),
  44. C0::ESC . '[' . '0;1' . FinalByte::SGR
  45. );
  46. }
  47. }