Test Failed
Push — master ( bb2f43...42a3d3 )
by Alex
01:41
created

tests.test_connect   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 107
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 36
dl 0
loc 107
rs 10
c 0
b 0
f 0
wmc 7

5 Functions

Rating   Name   Duplication   Size   Complexity  
A test_find() 0 19 1
A test_register() 0 4 1
A test_create_single() 0 8 1
A test_page() 0 21 1
A test_create_batch() 0 13 3
1
from snakelet.storage import Document, Manager
2
3
4
class Owner(Document):
5
    pass
6
7
8
class Cat(Document):
9
    pass
10
11
12
# Read Configuration
13
# config = configparser.ConfigParser()
14
# config.read('tests/config.ini')
15
# config = config['storage']
16
17
# Connect to Database
18
manager = Manager(
19
    case='camel',
20
    # database=config['db'],
21
    database='snakelet_test',
22
    # host=config['host'],
23
    host=None,
24
    # port=config.getint('port'),
25
    port=None,
26
    # username=config['user'],
27
    username='snakelet_test',
28
    # password=config.get('pass', raw=True)
29
    password='e880c7f6bb0a4ed4866d9da2b829e8a3e61b69f4'
30
)
31
32
33
# Register Types
34
def test_register():
35
    manager.register(Owner, Cat)
36
    assert 'Owner' in manager.documents
37
    assert 'Cat' in manager.documents
38
39
40
def test_create_single():
41
    # create document
42
    owner = Owner()
43
    owner['name'] = 'Schrödinger'
44
    assert owner.is_new()
45
    # persist document
46
    manager.save(owner)
47
    assert not owner.is_new()
48
49
50
def test_create_batch():
51
    owner = manager.Owner.find_one({'name': 'Schrödinger'})
52
    assert owner is not None
53
    # save count
54
    # manager.Cat.count()
55
    # create cats
56
    test_set = 10
57
    for x in range(test_set):
58
        cat = Cat()
59
        cat['name'] = '{1} {0}'.format(str(x), 'Pyewacket' if x % 2 == 0 else 'Shoshana')
60
        cat['owner'] = owner
61
    # assert count is test_set more
62
    assert True
63
64
65
def test_find():
66
    # Fetch and/or Create
67
    # fetched = manager.Test.find_one({'name': 'example'})
68
    # if not fetched:
69
    #     print('unable to find document; creating new document...')
70
    #     created = Test()
71
    #     created['name'] = 'example'
72
    #     print('save:', created)
73
    #     manager.save(created)
74
    #     print('persistent:', created)
75
    # elif 'updated' not in fetched or not fetched['updated']:
76
    #     print('updating:', fetched)
77
    #     fetched['updated'] = True
78
    #     manager.save(fetched)
79
    # else:
80
    #     print('fetched:', fetched)
81
    #     print('removing document...')
82
    #     manager.remove(fetched)
83
    assert True
84
85
86
def test_page():
87
    # Settings
88
    """
89
    results = manager.Test.find({'name': 1})
90
    result_count = results.count()
91
    """
92
    # result_count = manager.Test.collection.count()
93
    # print('count:', result_count)
94
    #
95
    # if result_count < 10:
96
    #     filler = []
97
    #     for x in range(0, 10):
98
    #         data = Test({'value': x})
99
    #         filler.append(data)
100
    #         manager.save(data)
101
    #
102
    # for page in manager.Test.paginate(find={'name': 1}):
103
    #     for test in page:
104
    #         print(test)
105
106
    assert True
107