['a1', 'a2'], 'flagList' => ['f1', 'f2', 'f3'], 'options' => [ 'optionOne' => 'test', ], ]; $params = new Params( $raw['options'], $raw['flagList'], $raw['argumentList'] ); $this->assertEquals($raw['argumentList'], $params->getArgumentList()); $this->assertEquals($raw['flagList'], $params->getFlagList()); $this->assertEquals($raw['options'], $params->getOptions()); $this->assertTrue($params->hasFlag('f1')); $this->assertFalse($params->hasFlag('f0')); $this->assertTrue($params->hasOption('optionOne')); $this->assertFalse($params->hasOption('optionZero')); $this->assertEquals('test', $params->getOption('optionOne')); $this->assertEquals(null, $params->getOption('optionTwo')); $this->assertEquals('a1', $params->getArgument(0)); $this->assertEquals(null, $params->getArgument(4)); } }