assertEquals(2, (new ArgvParser(['bin/tasker', '-v']))->getVerbosity()); $this->assertEquals(3, (new ArgvParser(['bin/tasker', '-vv']))->getVerbosity()); $this->assertEquals(4, (new ArgvParser(['bin/tasker', '-vvv']))->getVerbosity()); $this->assertEquals(0, (new ArgvParser(['bin/tasker', '-q']))->getVerbosity()); $this->assertEquals(0, (new ArgvParser(['bin/tasker', '--quiet']))->getVerbosity()); } public function testParseGlobalFlags(): void { $parser = new ArgvParser(['bin/tasker', '--no-interaction', '--no-ansi', '--help']); $this->assertTrue($parser->isNoInteraction()); $this->assertTrue($parser->isNoAnsi()); $this->assertTrue($parser->isHelp()); } public function testParseCommandAndArguments(): void { $parser = new ArgvParser(['bin/tasker', '-v', 'my:command', 'arg1', 'arg2']); $this->assertEquals('my:command', $parser->getCommandName()); $this->assertEquals(['arg1', 'arg2'], $parser->getRemainingArguments()); $this->assertEquals(2, $parser->getVerbosity()); } }