Passed
Push — master ( c5801a...8fec65 )
by Jeffrey
05:00
created

test_app   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 56
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 45
dl 0
loc 56
rs 10
c 0
b 0
f 0
wmc 5

5 Functions

Rating   Name   Duplication   Size   Complexity  
A test_aliases() 0 5 1
A test_register_from_module_string() 0 10 1
A test_register_from_module() 0 10 1
A test_registry_defaults() 0 7 1
A test_registry() 0 9 1
1
import pytest
2
3
import goblin
4
from goblin import element
5
6
7
@pytest.mark.asyncio
8
async def test_register_from_module(app):
9
    import register_models
10
    app.register_from_module(register_models)
11
    vertices, edges = app._vertices.values(), app._edges.values()
12
    assert register_models.TestRegisterVertex1 in vertices
13
    assert register_models.TestRegisterVertex2 in vertices
14
    assert register_models.TestRegisterEdge1 in edges
15
    assert register_models.TestRegisterEdge2 in edges
16
    await app.close()
17
18
19
@pytest.mark.asyncio
20
async def test_register_from_module_string(app):
21
    app.register_from_module('register_models', package=__package__)
22
    vertices, edges = app._vertices.values(), app._edges.values()
23
    import register_models
24
    assert register_models.TestRegisterVertex1 in vertices
25
    assert register_models.TestRegisterVertex2 in vertices
26
    assert register_models.TestRegisterEdge1 in edges
27
    assert register_models.TestRegisterEdge2 in edges
28
    await app.close()
29
30
31
@pytest.mark.asyncio
32
async def test_registry(app, person, place, knows, lives_in):
33
    assert len(app.vertices) == 2
34
    assert len(app.edges) == 2
35
    assert person.__class__ == app.vertices['person']
36
    assert place.__class__ == app.vertices['place']
37
    assert knows.__class__ == app.edges['knows']
38
    assert lives_in.__class__ == app.edges['lives_in']
39
    await app.close()
40
41
42
@pytest.mark.asyncio
43
async def test_registry_defaults(app):
44
    vertex = app.vertices['unregistered']
45
    assert isinstance(vertex(), element.Vertex)
46
    edge = app.edges['unregistered']
47
    assert isinstance(edge(), element.Edge)
48
    await app.close()
49
50
51
@pytest.mark.asyncio
52
async def test_aliases(app, aliases):
53
    session = await app.session()
54
    assert session._remote_connection._client.aliases == aliases
55
    await app.close()
56