Added simple test cases for string selector with logical ops
Also fixed found bug (missing return statement) NB: the grammar is not finalized yet
This commit is contained in:
@ -641,7 +641,7 @@ def _makeExpressionGrammar(atom):
|
|||||||
|
|
||||||
def delta_callback(res):
|
def delta_callback(res):
|
||||||
items = res.asList()[0][::2]
|
items = res.asList()[0][::2]
|
||||||
reduce(SubtractSelector,items)
|
return reduce(SubtractSelector,items)
|
||||||
|
|
||||||
def not_callback(res):
|
def not_callback(res):
|
||||||
right = res.asList()[0][1]
|
right = res.asList()[0][1]
|
||||||
|
@ -354,6 +354,16 @@ class TestCQSelectors(BaseTest):
|
|||||||
self.assertEqual(2, len(fl))
|
self.assertEqual(2, len(fl))
|
||||||
el = c.edges(S("|X") + S("|Y")).vals()
|
el = c.edges(S("|X") + S("|Y")).vals()
|
||||||
self.assertEqual(8, len(el))
|
self.assertEqual(8, len(el))
|
||||||
|
|
||||||
|
# test using extended string syntax
|
||||||
|
fl = c.faces(">Z | <Z").vals()
|
||||||
|
self.assertEqual(2, len(fl))
|
||||||
|
el = c.edges("|X | |Y").vals()
|
||||||
|
self.assertEqual(8, len(el))
|
||||||
|
|
||||||
|
# test using extended string syntax
|
||||||
|
v = c.vertices(">X & >Y").vals()
|
||||||
|
self.assertEqual(2, len(v))
|
||||||
|
|
||||||
def testSubtractSelector(self):
|
def testSubtractSelector(self):
|
||||||
c = CQ(makeUnitCube())
|
c = CQ(makeUnitCube())
|
||||||
@ -366,6 +376,10 @@ class TestCQSelectors(BaseTest):
|
|||||||
# test the subtract operator
|
# test the subtract operator
|
||||||
fl = c.faces(S("#Z") - S(">X")).vals()
|
fl = c.faces(S("#Z") - S(">X")).vals()
|
||||||
self.assertEqual(3, len(fl))
|
self.assertEqual(3, len(fl))
|
||||||
|
|
||||||
|
# test using extended string syntax
|
||||||
|
fl = c.faces("#Z ^ >X").vals()
|
||||||
|
self.assertEqual(3, len(fl))
|
||||||
|
|
||||||
def testInverseSelector(self):
|
def testInverseSelector(self):
|
||||||
c = CQ(makeUnitCube())
|
c = CQ(makeUnitCube())
|
||||||
@ -382,6 +396,12 @@ class TestCQSelectors(BaseTest):
|
|||||||
self.assertEqual(5, len(fl))
|
self.assertEqual(5, len(fl))
|
||||||
el = c.faces('>Z').edges(-S('>X')).vals()
|
el = c.faces('>Z').edges(-S('>X')).vals()
|
||||||
self.assertEqual(3, len(el))
|
self.assertEqual(3, len(el))
|
||||||
|
|
||||||
|
# test using extended string syntax
|
||||||
|
fl = c.faces('~>Z').vals()
|
||||||
|
self.assertEqual(5, len(fl))
|
||||||
|
el = c.faces('>Z').edges('~>X').vals()
|
||||||
|
self.assertEqual(3, len(el))
|
||||||
|
|
||||||
def testFaceCount(self):
|
def testFaceCount(self):
|
||||||
c = CQ(makeUnitCube())
|
c = CQ(makeUnitCube())
|
||||||
|
Reference in New Issue
Block a user