Annotation of embedaddon/php/ext/ldap/tests/ldap_add_error.phpt, revision 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>