示例#1
0
 public function testChaining()
 {
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->addAnd(Zend_Ldap_Filter::approx('a2', 'v2'));
     $this->assertEquals('(&(a1=v1)(a2~=v2))', $f->toString());
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->addOr(Zend_Ldap_Filter::approx('a2', 'v2'));
     $this->assertEquals('(|(a1=v1)(a2~=v2))', $f->toString());
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->negate()->addOr(Zend_Ldap_Filter::approx('a2', 'v2'));
     $this->assertEquals('(|(!(a1=v1))(a2~=v2))', $f->toString());
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->addAnd(Zend_Ldap_Filter::approx('a2', 'v2')->negate());
     $this->assertEquals('(&(a1=v1)(!(a2~=v2)))', $f->toString());
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->negate()->addAnd(Zend_Ldap_Filter::approx('a2', 'v2')->negate());
     $this->assertEquals('(&(!(a1=v1))(!(a2~=v2)))', $f->toString());
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->negate()->addAnd(Zend_Ldap_Filter::approx('a2', 'v2')->negate());
     $this->assertEquals('(&(!(a1=v1))(!(a2~=v2)))', $f->toString());
     $f = Zend_Ldap_Filter::equals('a1', 'v1')->negate()->addAnd(Zend_Ldap_Filter::approx('a2', 'v2')->negate())->negate();
     $this->assertEquals('(!(&(!(a1=v1))(!(a2~=v2))))', $f->toString());
 }