Пример #1
0
def p_path(p):
    '''
        path : '<' vertex steps '>'
             | '<' vertex '>'
    '''
    path = Path()
    path.src = p[2].get_vVal()
    if len(p) == 5:
        path.steps = p[3]
    p[0] = Value(pVal=path)
Пример #2
0
 expected['-[@1]->'] = Value(eVal=Edge(type=1, ranking=1))
 expected['-[@-1]->'] = Value(eVal=Edge(type=1, ranking=-1))
 expected['<-[@-1]-'] = Value(eVal=Edge(type=-1, ranking=-1))
 expected['-["1"->"2"]->'] = Value(eVal=Edge(src='1', dst='2', type=1))
 expected['<-["1"->"2"]-'] = Value(eVal=Edge(src='1', dst='2', type=-1))
 expected['-[{}]->'] = Value(eVal=Edge(type=1, props={}))
 expected['<-[{}]-'] = Value(eVal=Edge(type=-1, props={}))
 expected['-[:e{}]->'] = Value(eVal=Edge(name='e', type=1, props={}))
 expected['<-[:e{}]-'] = Value(eVal=Edge(name='e', type=-1, props={}))
 expected['-[:e@123{}]->'] = Value(
     eVal=Edge(name='e', type=1, ranking=123, props={}))
 expected['<-[:e@123{}]-'] = Value(
     eVal=Edge(name='e', type=-1, ranking=123, props={}))
 expected['-[:e"1"->"2"@123{}]->'] = Value(
     eVal=Edge(name='e', type=1, ranking=123, src='1', dst='2', props={}))
 expected['<()>'] = Value(pVal=Path(src=Vertex()))
 expected['<("vid")>'] = Value(pVal=Path(src=Vertex(vid='vid')))
 expected['<()-->()>'] = Value(
     pVal=Path(src=Vertex(), steps=[Step(type=1, dst=Vertex())]))
 expected['<()<--()>'] = Value(
     pVal=Path(src=Vertex(), steps=[Step(type=-1, dst=Vertex())]))
 expected['<()-->()-->()>'] = Value(pVal=Path(src=Vertex(),\
             steps=[Step(type=1, dst=Vertex()),Step(type=1, dst=Vertex())]))
 expected['<()-->()<--()>'] = Value(pVal=Path(src=Vertex(),\
             steps=[Step(type=1, dst=Vertex()),Step(type=-1, dst=Vertex())]))
 expected['<("v1")-[:e1]->()<-[:e2]-("v2")>'] = Value(pVal=Path(src=Vertex(vid='v1'),\
             steps=[Step(name='e1',type=1,dst=Vertex()),Step(name='e2',type=-1, dst=Vertex(vid='v2'))]))
 for item in expected.items():
     v = parse(item[0])
     assert v is not None, "Failed to parse %s" % item[0]
     assert v == item[1], \
Пример #3
0
    for cell in row:
        v = nbv.parse(cell)
        if v is None:
            raise Exception('Unable to parse %s' % cell)
        list.append(v)
    return Row(list)


if __name__ == '__main__':
    headings = ['m', 'r', 'n']
    rows = [
        ['1', '2', '3'],
        ['()', '-->', '()'],
        ['("vid")', '<-[:e "1" -> "2" @-1 {p1: 0, p2: [1, 2, 3]}]-', '()'],
        ['<()-->()<--()>', '()', '"prop"'],
        ['EMPTY', 'NULL', 'BAD_TYPE'],
    ]
    expected = DataSet(column_names = headings,\
            rows = [
                Row([Value(iVal=1), Value(iVal=2), Value(iVal=3)]),
                Row([Value(vVal=Vertex()), Value(eVal=Edge(type=1)), Value(vVal=Vertex())]),
                Row([Value(vVal=Vertex('vid')), Value(eVal=Edge(name='e',type=-1,src='1',dst='2',ranking=-1,props={'p1': Value(iVal=0), 'p2': Value(lVal=List([Value(iVal=1),Value(iVal=2),Value(iVal=3)]))})), Value(vVal=Vertex())]),
                Row([Value(pVal=Path(src=Vertex(),steps=[Step(type=1,dst=Vertex()),Step(type=-1,dst=Vertex())])), Value(vVal=Vertex()), Value(sVal='prop')]),
                Row([Value(), Value(nVal=NullType.__NULL__), Value(nVal=NullType.BAD_TYPE)])
            ])

    table = bh.Table(headings=headings, rows=rows)
    dataset = parse(table)
    assert dataset == expected,\
                    "Parsed DataSet doesn't match, \nexpected: %s, \nactual: %s" % (expected, dataset)