Beispiel #1
0
class DocumentTest(unittest.TestCase):
    def setUp(self):
        self.l = Library("/tmp/index.test", "w")
        for data in datas:
            d = Document()
            for k, v in data.iteritems():
                d[k] = v
            self.l.append(d)

    def testKargs(self):
        d = Document(name="Bob", score=42)
        self.assertEquals(42, d["score"])

    def testNot(self):
        b = -self.l.get("score", 42)
        self.assertEquals(set([0]), b.results())

    def testAnd(self):
        b = self.l.get("score", 42) & self.l.get("tags", "simple")
        for document in self.l.documents(self.l.query("score:42 and tags:simple")):
            pass
            # print document
        self.assertEquals(1, b.cardinality())
        self.assertEquals(set([1]), b.results())
        for doc in self.l.documents(b):
            self.assertEquals("casimir", doc["nom"])

    def testStart(self):
        self.assertEquals(set([2]), self.l.start("nom", "an").results())

    def testRange(self):
        self.assertEquals(set([0, 2]), self.l.range("nom", "adrien", "brigitte").results())