Subversion Repositories HomeAutomation

Rev

Rev 743 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 743 Rev 747
1
import logging as log
1
import logging as log
2
log.basicConfig(level=log.DEBUG,
2
log.basicConfig(level=log.DEBUG,
3
                format='%(asctime)s %(levelname)s %(message)s',
3
                format='%(asctime)s %(levelname)s %(message)s',
4
                filename=__name__ + '.log',
4
                filename=__name__ + '.log',
5
                filemode='w')
5
                filemode='w')
6
import unittest
6
import unittest
7
 
7
 
8
#--------------------------------------------------------------------------
8
#--------------------------------------------------------------------------
9
 
9
 
10
from CanPkt import CanPkt
10
from CanPkt import CanPkt
11
 
11
 
12
class CanPktTests(unittest.TestCase):
12
class CanPktTests(unittest.TestCase):
13
 
13
 
14
    def setUp(self):
14
    def setUp(self):
15
        """Call before every test case."""
15
        """Call before every test case."""
16
        pass
16
        pass
17
       
17
       
18
    def tearDown(self):
18
    def tearDown(self):
19
        """Call after every test case."""
19
        """Call after every test case."""
20
        pass
20
        pass
21
   
21
   
22
    def testA_CanPktBasic1(self):
22
    def testA_CanPktBasic1(self):
23
        log.debug('testCanPktBasic1')
23
        log.debug('testCanPktBasic1')
24
        pkt = None
24
        pkt = None
25
        pktList = []
25
        pktList = []
26
        for i in range(0,256):
26
        for i in range(0,256):
27
            pkt = CanPkt(i, [0xff, 0x01, 0x3c])
27
            pkt = CanPkt(i, [0xff, 0x01, 0x3c])
28
            pktList.append(pkt)
28
            pktList.append(pkt)
29
            pktstr = pkt.toString()
29
            pktstr = pkt.toString()
30
            log.debug('pkt ' + str(i) + ' str: ' + pktstr)
30
            log.debug('pkt ' + str(i) + ' str: ' + pktstr)
31
            assert pkt.nodeId == i
31
            assert pkt.nodeId == i
32
 
32
 
33
    def testB_CanPktBasic2(self):
33
    def testB_CanPktBasic2(self):
34
        log.debug('testCanPktBasic2')
34
        log.debug('testCanPktBasic2')
35
        pkt = CanPkt(0xffaaaa, [0x1b, 0xff])
35
        pkt = CanPkt(0xffaaaa, [0x1b, 0xff])
36
        str = pkt.toString()
36
        str = pkt.toString()
37
        log.debug('pkt str: ' + str)
37
        log.debug('pkt str: ' + str)
38
        assert str == 'PKT ffaaaa 1 0 27 255'
38
        assert str == 'PKT 00FFAAAA 1 0 1b ff'
39
        log.debug(pkt.nodeId)
39
        log.debug(pkt.nodeId)
40
        assert pkt.nodeId == 0xffaaaa
40
        assert pkt.nodeId == 0xffaaaa
41
        log.debug(pkt.extended)
41
        log.debug(pkt.extended)
42
        assert pkt.extended == True
42
        assert pkt.extended == True
43
        log.debug(pkt.remote)
43
        log.debug(pkt.remote)
44
        assert pkt.remote == False
44
        assert pkt.remote == False
45
        log.debug(pkt.data)
45
        log.debug(pkt.data)
46
        log.debug(pkt.data[0])
46
        log.debug(pkt.data[0])
47
        assert pkt.data[0] == 0x1b
47
        assert pkt.data[0] == 0x1b
48
        log.debug(pkt.data[1])
48
        log.debug(pkt.data[1])
49
        assert pkt.data[1] == 0xff
49
        assert pkt.data[1] == 0xff
50
        return True
50
        return True
51
   
51
   
52
    def testC_CanPktBasic3(self):
52
    def testC_CanPktBasic3(self):
53
        log.debug('testCanPktBasic3')
53
        log.debug('testCanPktBasic3')
54
        pktstr = CanPkt(0x1f8f0100,[0x5f,0x3a,0x40,0x01]).toString()
54
        pktstr = CanPkt(0x1f8f0100,[0x5f,0x3a,0x40,0x01]).toString()
55
        log.debug(pktstr)
55
        log.debug(pktstr)
56
        pkt = CanPkt.stringToCanPkt(self, pktstr)
56
        pkt = CanPkt.stringToCanPkt(self, pktstr)
57
        log.debug(pkt.nodeId)
57
        log.debug(pkt.nodeId)
58
        assert pkt.nodeId == 0x1f8f0100
58
        assert pkt.nodeId == 0x1f8f0100
59
        log.debug(pkt.data[1])
59
        log.debug(pkt.data[1])
60
        assert pkt.data[3] == 0x01
60
        assert pkt.data[3] == 0x01
61
   
61
   
62
    def testC_PktHandler1_1(self):
62
    def testC_PktHandler1_1(self):
63
        log.debug('testPktHandler1_1')
63
        log.debug('testPktHandler1_1')
64
        pktstr = 'PKT 1f8f0100 1 0 43 01'
64
        pktstr = 'PKT 1f8f0100 1 0 43 01'
65
        pkt = CanPkt.stringToCanPkt(self, pktstr)
65
        pkt = CanPkt.stringToCanPkt(self, pktstr)
66
        log.debug(pkt.nodeId)
66
        log.debug(pkt.nodeId)
67
        assert pkt.nodeId == 0x1f8f0100
67
        assert pkt.nodeId == 0x1f8f0100
68
        log.debug(pkt.extended)
68
        log.debug(pkt.extended)
69
        assert pkt.extended == True
69
        assert pkt.extended == True
70
        log.debug(pkt.remote)
70
        log.debug(pkt.remote)
71
        assert pkt.remote == False
71
        assert pkt.remote == False
72
        log.debug(pkt.data)
72
        log.debug(pkt.data)
73
        log.debug(pkt.data[0])
73
        log.debug(pkt.data[0])
74
        assert pkt.data[0] == 0x2b
74
        assert pkt.data[0] == 0x43
75
        log.debug(pkt.data[1])
75
        log.debug(pkt.data[1])
76
        assert pkt.data[1] == 0x01
76
        assert pkt.data[1] == 0x01
77
       
77
       
78
if __name__ == "__main__":
78
if __name__ == "__main__":
79
    unittest.main() # run all tests
79
    unittest.main() # run all tests
80
 
80