Annotation of embedaddon/php/ext/intl/tests/idn_uts46_errors.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: IDN UTS #46 API error tests
        !             3: --SKIPIF--
        !             4: <?php
        !             5:        if (!extension_loaded('intl'))
        !             6:                die('skip');
        !             7:        if (!defined('INTL_IDNA_VARIANT_UTS46'))
        !             8:                die('skip no UTS #46 API');
        !             9: --FILE--
        !            10: <?php
        !            11: ini_set("intl.error_level", E_WARNING);
        !            12: echo "=> PHP level errors", "\n";
        !            13: 
        !            14: echo "bad args:", "\n";
        !            15: var_dump(idn_to_ascii("", 0, array()));
        !            16: var_dump(idn_to_ascii("", 0, INTL_IDNA_VARIANT_UTS46, $foo, null));
        !            17: 
        !            18: echo "bad variant:", "\n";
        !            19: var_dump(idn_to_ascii("", 0, INTL_IDNA_VARIANT_UTS46 + 10));
        !            20: 
        !            21: echo "empty domain:", "\n";
        !            22: var_dump(idn_to_ascii("", 0, INTL_IDNA_VARIANT_UTS46));
        !            23: 
        !            24: echo "fourth arg for 2003 variant (only notice raised):", "\n";
        !            25: var_dump(idn_to_ascii("foo.com", 0, INTL_IDNA_VARIANT_2003, $foo));
        !            26: 
        !            27: echo "with error, but no details arg:", "\n";
        !            28: var_dump(idn_to_ascii("www.fußball.com-", 0, INTL_IDNA_VARIANT_UTS46));
        !            29: 
        !            30: echo "with error, with details arg:", "\n";
        !            31: var_dump(idn_to_ascii("www.fußball.com-", IDNA_NONTRANSITIONAL_TO_ASCII,
        !            32:        INTL_IDNA_VARIANT_UTS46, $foo));
        !            33: var_dump($foo);
        !            34: 
        !            35: echo "with error, with details arg, contextj:", "\n";
        !            36: var_dump(idn_to_ascii(
        !            37:                html_entity_decode("www.a&#x200D;b.com", 0, "UTF-8"),
        !            38:                IDNA_NONTRANSITIONAL_TO_ASCII | IDNA_CHECK_CONTEXTJ,
        !            39:                INTL_IDNA_VARIANT_UTS46, $foo));
        !            40: var_dump($foo);
        !            41: var_dump($foo["errors"]==IDNA_ERROR_CONTEXTJ);
        !            42: --EXPECTF--
        !            43: => PHP level errors
        !            44: bad args:
        !            45: 
        !            46: Warning: idn_to_ascii() expects parameter 3 to be long, array given in %s on line %d
        !            47: 
        !            48: Warning: idn_to_ascii(): idn_to_ascii: bad arguments in %s on line %d
        !            49: NULL
        !            50: 
        !            51: Warning: idn_to_ascii() expects at most 4 parameters, 5 given in %s on line %d
        !            52: 
        !            53: Warning: idn_to_ascii(): idn_to_ascii: bad arguments in %s on line %d
        !            54: NULL
        !            55: bad variant:
        !            56: 
        !            57: Warning: idn_to_ascii(): idn_to_ascii: invalid variant, must be one of {INTL_IDNA_VARIANT_2003, INTL_IDNA_VARIANT_UTS46} in %s on line %d
        !            58: bool(false)
        !            59: empty domain:
        !            60: 
        !            61: Warning: idn_to_ascii(): idn_to_ascii: empty domain name in %s on line %d
        !            62: bool(false)
        !            63: fourth arg for 2003 variant (only notice raised):
        !            64: 
        !            65: Notice: idn_to_ascii(): 4 arguments were provided, but INTL_IDNA_VARIANT_2003 only takes 3 - extra argument ignored in %s on line %d
        !            66: string(7) "foo.com"
        !            67: with error, but no details arg:
        !            68: bool(false)
        !            69: with error, with details arg:
        !            70: bool(false)
        !            71: array(3) {
        !            72:   ["result"]=>
        !            73:   string(23) "www.xn--fuball-cta.com-"
        !            74:   ["isTransitionalDifferent"]=>
        !            75:   bool(true)
        !            76:   ["errors"]=>
        !            77:   int(16)
        !            78: }
        !            79: with error, with details arg, contextj:
        !            80: bool(false)
        !            81: array(3) {
        !            82:   ["result"]=>
        !            83:   string(18) "www.xn--ab-m1t.com"
        !            84:   ["isTransitionalDifferent"]=>
        !            85:   bool(true)
        !            86:   ["errors"]=>
        !            87:   int(4096)
        !            88: }
        !            89: bool(true)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>