def test016(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode from Products.ZCTextIndex.ParseTree import NotNode self.expect("-foo bar", AndNode([AtomNode("bar"), NotNode(AtomNode("foo"))]))
def test006(self): self.expect( "(aa OR bb) AND (cc OR dd)", AndNode([ OrNode([AtomNode("aa"), AtomNode("bb")]), OrNode([AtomNode("cc"), AtomNode("dd")]) ]))
def test004(self): from Products.ZCTextIndex.ParseTree import AtomNode from Products.ZCTextIndex.ParseTree import OrNode self.expect("aa OR bb or cc", OrNode([AtomNode("aa"), AtomNode("bb"), AtomNode("cc")]))
def test006(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode from Products.ZCTextIndex.ParseTree import OrNode self.expect("(aa OR bb) AND (cc OR dd)", AndNode([OrNode([AtomNode("aa"), AtomNode("bb")]), OrNode([AtomNode("cc"), AtomNode("dd")])]))
def test007(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode from Products.ZCTextIndex.ParseTree import NotNode self.expect("aa AND NOT bb", AndNode([AtomNode("aa"), NotNode(AtomNode("bb"))]))
def test025(self): # Split by Unicode fullwidth space from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode self.expect(u"foo\u3000bar", AndNode([AtomNode(u"foo"), AtomNode(u"bar")]))
def test005(self): self.expect( "aa AND bb OR cc AnD dd", OrNode([ AndNode([AtomNode("aa"), AtomNode("bb")]), AndNode([AtomNode("cc"), AtomNode("dd")]) ]))
def test005(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode from Products.ZCTextIndex.ParseTree import OrNode self.expect("aa AND bb OR cc AnD dd", OrNode([AndNode([AtomNode("aa"), AtomNode("bb")]), AndNode([AtomNode("cc"), AtomNode("dd")])]))
def test003(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode self.expect("aa and bb AND cc", AndNode([AtomNode("aa"), AtomNode("bb"), AtomNode("cc")]))
def test021(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode self.expect( 'foo"bar"blech', AndNode([AtomNode("foo"), AtomNode("bar"), AtomNode("blech")]))
def test018(self): from Products.ZCTextIndex.ParseTree import AndNode from Products.ZCTextIndex.ParseTree import AtomNode from Products.ZCTextIndex.ParseTree import NotNode from Products.ZCTextIndex.ParseTree import PhraseNode self.expect('booh -"foo bar"', AndNode([AtomNode("booh"), NotNode(PhraseNode(["foo", "bar"]))]))
def test019(self): self.expect('foo"bar"', AndNode([AtomNode("foo"), AtomNode("bar")]))
def test018(self): self.expect( 'booh -"foo bar"', AndNode([AtomNode("booh"), NotNode(PhraseNode(["foo", "bar"]))]))
def test003(self): self.expect("aa and bb AND cc", AndNode([AtomNode("aa"), AtomNode("bb"), AtomNode("cc")]))
def test001(self): self.expect("foo", AtomNode("foo"))
def test205(self): self.expect('foo OR stop', AtomNode("foo"), ["stop"])
def test023(self): self.expect("foo* bar", AndNode([GlobNode("foo*"), AtomNode("bar")]))
def test020(self): self.expect('"foo"bar', AndNode([AtomNode("foo"), AtomNode("bar")]))
def test021(self): self.expect( 'foo"bar"blech', AndNode([AtomNode("foo"), AtomNode("bar"), AtomNode("blech")]))
def test203(self): self.expect('foo AND NOT stop', AtomNode("foo"), ["stop"])
def test201(self): self.expect('and/', AtomNode("and"))
def test007(self): self.expect("aa AND NOT bb", AndNode([AtomNode("aa"), NotNode(AtomNode("bb"))]))
def test204(self): self.expect('stop AND foo', AtomNode("foo"), ["stop"])
def test011(self): self.expect("foo bar", AndNode([AtomNode("foo"), AtomNode("bar")]))
def test206(self): self.expect('stop OR foo', AtomNode("foo"), ["stop"])
def test013(self): self.expect("((foo bar))", AndNode([AtomNode("foo"), AtomNode("bar")]))
def test002(self): self.expect("note", AtomNode("note"))
def test016(self): self.expect("-foo bar", AndNode([AtomNode("bar"), NotNode(AtomNode("foo"))]))
def test004(self): self.expect("aa OR bb or cc", OrNode([AtomNode("aa"), AtomNode("bb"), AtomNode("cc")]))
def test017(self): self.expect( "booh -foo-bar", AndNode([AtomNode("booh"), NotNode(PhraseNode(["foo", "bar"]))]))