Passed
Push — master ( 5ed592...325e70 )
by Dave
01:04
created

TestPools.test_availablepool_key()   A

Complexity

Conditions 1

Size

Total Lines 3
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 3
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
'''unit tests for pools'''
2
import unittest
3
from domain.mining import Pool, AvailablePool
4
from domain.minerpool import MinerPool
5
6
class TestPools(unittest.TestCase):
7
    def test_availablepool_key(self):
8
        available_pool = AvailablePool('S9', None, 'url', 'user', 'x', 0)
9
        self.assertTrue(available_pool.key == 'url|user')
10
11
    def test_same_as_partial_match(self):
12
        namedpool = Pool('S9', 'CoolPool', 'tcp://stratum.pool.com', 'workername.', 0)
13
        available_pool = AvailablePool('S9', None, namedpool.url, 'workername.MinerName', 'x', 0)
14
        is_same = namedpool.is_same_as(available_pool)
15
        self.assertTrue(is_same)
16
17
    def test_same_as_partial_match_case(self):
18
        '''test'''
19
        namedpool = Pool('S9', 'CoolPool', 'tcp://stratum.pool.com', 'workername.', 0)
20
        available_pool = AvailablePool('S9', None, \
21
            namedpool.url.upper(), 'workername.MinerName', 'x', 0)
22
        is_same = namedpool.is_same_as(available_pool)
23
        self.assertTrue(is_same)
24
25
    def test_same_as_partial_not_match(self):
26
        '''test'''
27
        namedpool = Pool('S9', 'CoolPool', 'tcp://stratum.pool.com', 'workername.', 0)
28
        available_pool = AvailablePool('S9', None, namedpool.url, 'notyours.MinerName', 'x', 0)
29
        is_same = namedpool.is_same_as(available_pool)
30
        self.assertFalse(is_same)
31
32
    def test_pool_create(self):
33
        values = []
34
        values.append({"name":"UnitTest"})
35
        values.append({"pool_type": "unitpool"})
36
        values.append({"url": "unittest.com"})
37
        values.append({"user": "test"})
38
        values.append({"priority": "priority"})
39
        values.append({"password": "secret"})
40
        pool = Pool.create(values)
41
        self.assertTrue(pool.name == "UnitTest")
42
        self.assertTrue(pool.pool_type == "unitpool")
43
        self.assertTrue(pool.url == "unittest.com")
44
        self.assertTrue(pool.user == "test")
45
        self.assertTrue(pool.priority == "priority")
46
        self.assertTrue(pool.password == "secret")
47
48
    def test_minerpool(self):
49
        pool = MinerPool(None, 1, None)
50
        self.assertTrue(pool.priority == 1)
51
52
if __name__ == '__main__':
53
    unittest.main()
54