CommandOptionTest.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace Test\Michel\Console;
  3. use Michel\Console\Option\CommandOption;
  4. use Michel\Console\Output;
  5. use Michel\UniTester\TestCase;
  6. class CommandOptionTest extends TestCase
  7. {
  8. protected function setUp(): void
  9. {
  10. // TODO: Implement setUp() method.
  11. }
  12. protected function tearDown(): void
  13. {
  14. // TODO: Implement tearDown() method.
  15. }
  16. protected function execute(): void
  17. {
  18. $this->testConstructor();
  19. $this->testGetName();
  20. $this->testGetShortcut();
  21. $this->testGetDescription();
  22. $this->testIsFlag();
  23. }
  24. public function testConstructor(): void
  25. {
  26. $option = new CommandOption('foo', 'f', 'description', true);
  27. $this->assertEquals('foo', $option->getName());
  28. $this->assertEquals('f', $option->getShortcut());
  29. $this->assertEquals('description', $option->getDescription());
  30. $this->assertTrue($option->isFlag());
  31. }
  32. public function testGetName(): void
  33. {
  34. $option = new CommandOption('foo');
  35. $this->assertEquals('foo', $option->getName());
  36. }
  37. public function testGetShortcut(): void
  38. {
  39. $option = new CommandOption('foo', 'f');
  40. $this->assertEquals('f', $option->getShortcut());
  41. }
  42. public function testGetDescription(): void
  43. {
  44. $option = new CommandOption('foo', null, 'description');
  45. $this->assertEquals('description', $option->getDescription());
  46. }
  47. public function testIsFlag(): void
  48. {
  49. $option = new CommandOption('foo', null, null, true);
  50. $this->assertTrue($option->isFlag());
  51. }
  52. }