getOptions()); self::assertFalse($arg->haveArgs); self::assertFalse($arg->optionalArgs); $arg = new Arg(["-o:", "--longo"]); self::assertSame(["-o", "--longo"], $arg->getOptions()); self::assertTrue($arg->haveArgs); self::assertFalse($arg->optionalArgs); $arg = new Arg(["-o::", "--longo"]); self::assertSame(["-o", "--longo"], $arg->getOptions()); self::assertTrue($arg->haveArgs); self::assertTrue($arg->optionalArgs); $arg = new Arg(["-o:", "--longo:"]); self::assertSame(["-o", "--longo"], $arg->getOptions()); self::assertTrue($arg->haveArgs); self::assertFalse($arg->optionalArgs); $arg = new Arg(["-o:", "--longo::"]); self::assertSame(["-o", "--longo"], $arg->getOptions()); self::assertTrue($arg->haveArgs); self::assertFalse($arg->optionalArgs); } function testExtends() { $basedef = ["-o:", "--longo"]; $def = [ "extends" => [ "arg" => $basedef, "add" => ["-a", "--longa"], "remove" => ["-o", "--longo"], ], ]; $arg = new Arg($def); self::assertSame(["-a", "--longa"], $arg->getOptions()); self::assertFalse($arg->haveArgs); self::assertFalse($arg->optionalArgs); } }