Exemplo n.º 1
0
class IndexTestCase(BulbsTestCase):
    
    def setUp(self):
        self.vertices = VertexProxy(Vertex,self.resource)
        self.indices = IndexProxy(self.index_class,self.resource)
       
    def test_index(self):
        index_name = "TEST"
        # need to fix this to accept actual data types in POST
        ikeys = '[name,location]'
        self.indices.delete(index_name)
        i1 = self.indices.create(index_name,Vertex)
        assert i1.index_name == index_name
        assert i1.index_type == "automatic"
        james = self.vertices.create({'name':'James'})
        i1.put(james._id,'name','James')
        i1.put(james._id,'location','Dallas')
        results = i1.get('name','James')
        results = list(results)
        print "RESULTS", results
        assert len(results) == 1
        assert results[0].name == "James"
        total_size = i1.count('name','James')
        assert total_size == 1
        # NOTE: only automatic indices have user provided keys
        #keys = i1.keys()
        #assert 'name' in keys
        #assert 'location' in keys
        i2 = self.indices.get(index_name,Vertex)
        print "INDEX_NAME", index_name, i1.index_name, i2.index_name
        assert i1.index_name == i2.index_name
        
        # remove vertex is bugged
        #i1.remove(james._id,'name','James')
        #james = i1.get_unique('name','James')
        #assert james is None
  
        # only can rebuild automatic indices
        i3 = self.indices.get("vertices",Vertex)
        results = i3.rebuild()
        assert type(results) == list

        self.indices.delete(index_name)
Exemplo n.º 2
0
 def setUp(self):
     self.vertices = VertexProxy(Vertex,self.resource)
     self.indices = IndexProxy(self.index_class,self.resource)