Annotation of embedaddon/php/ext/ldap/tests/ldap_add_error.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: ldap_add() - Add operation that should fail
                      3: --CREDITS--
                      4: Patrick Allaert <patrickallaert@php.net>
                      5: # Belgian PHP Testfest 2009
                      6: --SKIPIF--
                      7: <?php require_once('skipif.inc'); ?>
                      8: <?php require_once('skipifbindfailure.inc'); ?>
                      9: --FILE--
                     10: <?php
                     11: require "connect.inc";
                     12: 
                     13: $link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
                     14: 
                     15: // Too few parameters
                     16: var_dump(ldap_add());
                     17: var_dump(ldap_add($link));
                     18: var_dump(ldap_add($link, "dc=my-domain,dc=com"));
                     19: 
                     20: // Too many parameters
                     21: var_dump(ldap_add($link, "dc=my-domain,dc=com", array(), "Additional data"));
                     22: 
                     23: var_dump(ldap_add($link, "dc=my-domain,dc=com", array()));
                     24: 
                     25: // Invalid DN
                     26: var_dump(
                     27:        ldap_add($link, "weirdAttribute=val", array(
                     28:                "weirdAttribute"                        => "val",
                     29:        )),
                     30:        ldap_error($link),
                     31:        ldap_errno($link)
                     32: );
                     33: 
                     34: // Duplicate entry
                     35: for ($i = 0; $i < 2; $i++)
                     36:        var_dump(
                     37:                ldap_add($link, "dc=my-domain,dc=com", array(
                     38:                        "objectClass"   => array(
                     39:                                "top",
                     40:                                "dcObject",
                     41:                                "organization"),
                     42:                        "dc"                    => "my-domain",
                     43:                        "o"                             => "my-domain",
                     44:                ))
                     45:        );
                     46: var_dump(ldap_error($link), ldap_errno($link));
                     47: 
                     48: // Wrong array indexes
                     49: var_dump(
                     50:        ldap_add($link, "dc=my-domain2,dc=com", array(
                     51:                "objectClass"   => array(
                     52:                        0       => "top",
                     53:                        2       => "dcObject",
                     54:                        5       => "organization"),
                     55:                "dc"                    => "my-domain",
                     56:                "o"                             => "my-domain",
                     57:        ))
                     58:        /* Is this correct behaviour to still have "Already exists" as error/errno?
                     59:        ,
                     60:        ldap_error($link),
                     61:        ldap_errno($link)
                     62:        */
                     63: );
                     64: 
                     65: // Invalid attribute
                     66: var_dump(
                     67:        ldap_add($link, "dc=my-domain,dc=com", array(
                     68:                "objectClass"   => array(
                     69:                        "top",
                     70:                        "dcObject",
                     71:                        "organization"),
                     72:                "dc"                    => "my-domain",
                     73:                "o"                             => "my-domain",
                     74:                "weirdAttr"             => "weirdVal",
                     75:        )),
                     76:        ldap_error($link),
                     77:        ldap_errno($link)
                     78: );
                     79: 
                     80: var_dump(
                     81:        ldap_add($link, "dc=my-domain,dc=com", array(array( "Oops"
                     82:        )))
                     83:        /* Is this correct behaviour to still have "Undefined attribute type" as error/errno?
                     84:        ,
                     85:        ldap_error($link),
                     86:        ldap_errno($link)
                     87:        */
                     88: );
                     89: ?>
                     90: ===DONE===
                     91: --CLEAN--
                     92: <?php
                     93: require "connect.inc";
                     94: 
                     95: $link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
                     96: 
                     97: ldap_delete($link, "dc=my-domain,dc=com");
                     98: ?>
                     99: --EXPECTF--
                    100: Warning: ldap_add() expects exactly 3 parameters, 0 given in %s on line %d
                    101: NULL
                    102: 
                    103: Warning: ldap_add() expects exactly 3 parameters, 1 given in %s on line %d
                    104: NULL
                    105: 
                    106: Warning: ldap_add() expects exactly 3 parameters, 2 given in %s on line %d
                    107: NULL
                    108: 
                    109: Warning: ldap_add() expects exactly 3 parameters, 4 given in %s on line %d
                    110: NULL
                    111: 
                    112: Warning: ldap_add(): Add: Protocol error in %s on line %d
                    113: bool(false)
                    114: 
                    115: Warning: ldap_add(): Add: Invalid DN syntax in %s on line %d
                    116: bool(false)
                    117: string(17) "Invalid DN syntax"
                    118: int(34)
                    119: bool(true)
                    120: 
                    121: Warning: ldap_add(): Add: Already exists in %s on line %d
                    122: bool(false)
                    123: string(14) "Already exists"
                    124: int(68)
                    125: 
                    126: Warning: ldap_add(): Value array must have consecutive indices 0, 1, ... in %s on line %d
                    127: bool(false)
                    128: 
                    129: Warning: ldap_add(): Add: Undefined attribute type in %s on line %d
                    130: bool(false)
                    131: string(24) "Undefined attribute type"
                    132: int(17)
                    133: 
                    134: Warning: ldap_add(): Unknown attribute in the data in %s on line %d
                    135: bool(false)
                    136: ===DONE===

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