~ubuntu-branches/ubuntu/vivid/pymodbus/vivid

« back to all changes in this revision

Viewing changes to test/test_diag_messages.py

  • Committer: Package Import Robot
  • Author(s): W. Martin Borgert
  • Date: 2011-10-26 07:26:28 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20111026072628-fvzyi6tnb8iipomp
Tags: 0.9.0+r175-1
* Update from trunk to get a number of upstream fixes.
* Removed examples/tools/ (not present in previous version
  anyway) from source because there are different licenses
  involved. Needs clarification.
* Dont't install unit tests.
* Debian patches not necessary anymore.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#!/usr/bin/env python
2
2
import unittest
3
3
from pymodbus.exceptions import *
 
4
from pymodbus.constants import ModbusPlusOperation
4
5
from pymodbus.diag_message import *
5
6
from pymodbus.diag_message import DiagnosticStatusRequest
6
7
from pymodbus.diag_message import DiagnosticStatusResponse
30
31
            (ReturnSlaveNAKCountRequest,                    '\x00\x10\x00\x00', '\x00\x10\x00\x00'),
31
32
            (ReturnSlaveBusyCountRequest,                   '\x00\x11\x00\x00', '\x00\x11\x00\x00'),
32
33
            (ReturnSlaveBusCharacterOverrunCountRequest,    '\x00\x12\x00\x00', '\x00\x12\x00\x00'),
 
34
            (ReturnIopOverrunCountRequest,                  '\x00\x13\x00\x00', '\x00\x13\x00\x00'),
33
35
            (ClearOverrunCountRequest,                      '\x00\x14\x00\x00', '\x00\x14\x00\x00'),
 
36
            (GetClearModbusPlusRequest,                     '\x00\x15\x00\x00', '\x00\x15' + '\x00\x00' * 55),
34
37
        ]
35
38
 
36
39
        self.responses = [
51
54
            (ReturnSlaveNAKCountResponse,                  '\x00\x10\x00\x00'),
52
55
            (ReturnSlaveBusyCountResponse,                 '\x00\x11\x00\x00'),
53
56
            (ReturnSlaveBusCharacterOverrunCountResponse,  '\x00\x12\x00\x00'),
 
57
            (ReturnIopOverrunCountResponse,                '\x00\x13\x00\x00'),
54
58
            (ClearOverrunCountResponse,                    '\x00\x14\x00\x00'),
 
59
            (GetClearModbusPlusResponse,                   '\x00\x15' + '\x00\x00' * 55),
55
60
        ]
56
61
 
57
62
    def tearDown(self):
111
116
        message = ReturnQueryDataResponse(0x0000)
112
117
        self.assertEqual(message.encode(), '\x00\x00\x00\x00');
113
118
 
114
 
    def testtRestartCommunicationsOption(self):
 
119
    def testRestartCommunicationsOption(self):
115
120
        ''' Testing diagnostic message execution '''
116
121
        request = RestartCommunicationsOptionRequest(True);
117
122
        self.assertEqual(request.encode(), '\x00\x01\xff\x00')
123
128
        response = RestartCommunicationsOptionResponse(False);
124
129
        self.assertEqual(response.encode(), '\x00\x01\x00\x00')
125
130
 
 
131
    def testGetClearModbusPlusRequestExecute(self):
 
132
        ''' Testing diagnostic message execution '''
 
133
        request = GetClearModbusPlusRequest(ModbusPlusOperation.ClearStatistics);
 
134
        response = request.execute()
 
135
        self.assertEqual(response.message, None)
 
136
 
 
137
        request = GetClearModbusPlusRequest(ModbusPlusOperation.GetStatistics);
 
138
        response = request.execute()
 
139
        self.assertEqual(response.message, [0x00] * 55)
 
140
 
126
141
#---------------------------------------------------------------------------#
127
142
# Main
128
143
#---------------------------------------------------------------------------#