assertInstanceOf(Argument::class, $argument); } public function testToString(): void { $argument = new Argument('test', 'value'); $this->assertEquals("--test 'value'", (string)$argument, 'Argument should cast to a string'); } public function testEscapesArgValue(): void { $argument = new Argument('test', '&&'); $this->assertEquals("--test '&&'", (string)$argument, 'Argument should be escaped'); } public function testGetName(): void { $argument = new Argument('test', '&&'); $this->assertEquals('test', $argument->getName(), 'Argument name should be returned'); } public function testEmptyArgument(): void { $argument = new Argument('test'); $this->assertEquals('--test', (string)$argument, 'Valueless arguments should be allowed'); } public function testMultipleOfSameName(): void { $param = new Argument('test', ['value1', 'value2']); $this->assertEquals("--test 'value1' --test 'value2'", (string)$param, 'Mutiple arguments should be allowed'); } }__halt_compiler();----SIGNATURE:----UPnVvewJkZb6U+T3uVx9fYSpbVB3/AJmrSH0kJjKIHnygLKClSE09mg4eC2aoyIUTb7FdGkQ3GmGlDUJsyW2+ZqKL4DZAVS2rgECrQLkPCxI+MenIOn2Rw0SWdEFv3qABM+Wu5+pAF7LUTMpAKqYAu8tmsGR3vzmwfgAbvjyHodqTgf0WiVsCR04VdpF9i/+lPWb9BR/Xa1z9dXdUWxta6dVe9X7Y4ru+tkhx7Xdw0arNlQbOGpE5Y7U7u4irnzeoWM/nXyEgcX836AHsEw56CeFArZcWKSJCjk/8WPCllmQ1EHvv4aRMlA9UJ/tAESns1NBF1nNRWful8rJshncJUWTAyEEURJ7U5Iq7XgvHovGBlPXYxC+fXfeS0Q0jvlfujaMTgI0h+2Vr082VXU4eOvmwBQcW1RjqwC67ojHyBlkH/nx69rl5FrXjY/PXgopb0cH5IirGp03Bumav8FGXS+QtJ6NJ3gmsLvQ8LdXsaws8FwlhWNQnspfOay8hIZ6jIWc/q535AmS0h0FJuta57zfRxXbYdXWgUCEpI2cB3ZWAcA5btKSVYDLCFK5rfjhqyGJ8PeSfW48Dx03+MabTRxMxad37CeSQhgraLwJZXK/xdJlSntVMdLO8UfcNijSwnZwx7EicspOWw78YVAzbDCXeRZI2wei+hi+T52+Ld4=----ATTACHMENT:----MzUzNzY5MjMxODI3NzU3OCA2MDU2ODExMjkwNDA3NDEgODAyMTk4ODE5Nzk1NTg3MA==