Completed
Push — master ( db34c1...589162 )
by Jerome
12s
created

TestBackedUpDict   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 14
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A test_add() 0 13 1
1
import os
2
import unittest
3
4
from msquaredc.persistence import BackedUpDict
5
from msquaredc.persistence import obtain
6
from msquaredc.persistence import persist
7
8
9
class TestPersistence(unittest.TestCase):
10
    def test_all(self):
11
        samples = [
12
            {"x": 1, "y": 2, "z": 3},
13
            {"x": 4, "y": 5, "z": ""},
14
        ]
15
        try:
16
            persist("test.txt", samples[0], "w+")
17
            persist("test.txt", samples[1], "a+")
18
            self.assertIn("test.txt", os.listdir(os.getcwd()))
19
            res = obtain("test.txt")
20
            # assert count("test.txt") == 3
21
        finally:
22
            if "test.txt" in os.listdir(os.getcwd()):
23
                os.remove("test.txt")
24
25
        self.assertEqual(len(res), len(samples))
26
        for i in range(len(samples)):
27
            for j in samples[i].keys():
28
                self.assertIn(j, res[i].keys())
29
                self.assertEqual(str(samples[i][j]), res[i][j], j + str(samples) + str(res))
30
31
32
class TestBackedUpDict(unittest.TestCase):
33
    def test_add(self):
34
        p = BackedUpDict(":memory:")
35
        p["bla"] = "blupp"
36
        self.assertEqual(p["bla"], "blupp")
37
        p[1] = 2
38
        self.assertEqual(p[1], 2)
39
        p[1] = "mahalo"
40
        self.assertEqual(p[1], "mahalo")
41
        self.assertIn(1, p.keys())
42
        self.assertIn("bla", p.keys())
43
        self.assertEqual(len(p), 2)
44
        p["1"] = "2"
45
        self.assertEqual(p[1], "mahalo")
46