Exemplo n.º 1
0
def test_command(req):
    request = Request(request=req, copy=False)
    request.request_type = 'control'
    cmd = request.command
    assert request.is_used
    assert cmd
    assert isinstance(cmd, str)
Exemplo n.º 2
0
def test_request_docs_mutable_iterator():
    """To test the weak reference work in docs"""
    r = Request()
    r.request_type = 'data'
    for d in random_docs(10):
        r.docs.append(d)

    for idx, d in enumerate(r.docs):
        assert isinstance(d, Document)
        d.text = f'look I changed it! {idx}'

    # iterate it again should see the change
    doc_pointers = []
    for idx, d in enumerate(r.docs):
        assert isinstance(d, Document)
        assert d.text == f'look I changed it! {idx}'
        doc_pointers.append(d)

    # pb-lize it should see the change
    rpb = r.proto

    for idx, d in enumerate(rpb.data.docs):
        assert isinstance(d, DocumentProto)
        assert d.text == f'look I changed it! {idx}'

    # change again by following the pointers
    for d in doc_pointers:
        d.text = 'now i change it back'

    # iterate it again should see the change
    for idx, d in enumerate(rpb.data.docs):
        assert isinstance(d, DocumentProto)
        assert d.text == 'now i change it back'
Exemplo n.º 3
0
def test_groundtruth(req):
    request = Request(request=req, copy=False)
    request.request_type = 'data'
    groundtruths = request.groundtruths
    assert request.is_used
    assert isinstance(groundtruths, DocumentArray)
    assert len(groundtruths) == 0
Exemplo n.º 4
0
def test_docs(req):
    request = Request(request=req, copy=False)
    request.request_type = 'data'
    docs = request.docs
    assert request.is_used
    assert isinstance(docs, DocumentArray)
    assert len(docs) == 1
Exemplo n.º 5
0
def test_groundtruth(req, req_type):
    request = Request(request=req, copy=False)
    request.request_type = req_type
    groundtruths = request.groundtruths
    assert request.is_used
    assert isinstance(groundtruths, DocumentSet)
    assert len(groundtruths) == 0
Exemplo n.º 6
0
def chunks(document_factory):
    req = Request()
    req.request_type = 'data'
    req.docs.extend([
        document_factory.create(1, 'test 1'),
        document_factory.create(2, 'test 1'),
        document_factory.create(3, 'test 3'),
    ])
    return req.proto.data.docs
Exemplo n.º 7
0
def test_docs(req, req_type):
    request = Request(request=req, copy=False)
    request.request_type = req_type
    docs = request.docs
    assert request.is_used
    assert isinstance(docs, DocumentSet)
    if req_type == 'index':
        assert len(docs) == 1
    else:
        assert len(docs) == 0
Exemplo n.º 8
0
def test_request_type_set_get_fail(req):
    request = Request(request=req, copy=False)
    with pytest.raises(ValueError):
        request.request_type = 'random'
Exemplo n.º 9
0
def test_request_type_set_get(req):
    request = Request(request=req, copy=False)
    request.request_type = 'search'
    assert request.request_type == 'SearchRequestProto'
Exemplo n.º 10
0
def test_request_type_set_get(req):
    request = Request(request=req, copy=False)
    request.request_type = 'data'
    assert request.request_type == 'DataRequestProto'
Exemplo n.º 11
0
def test_delete_request():
    req = Request()
    req.request_type = str(RequestType.DELETE)
    req.ids.extend(['123', '456'])
    assert req.dict()['delete']['ids'] == ['123', '456']