@@ 154-186 (lines=33) @@ | ||
151 | struct.pack('H', 0) + \ |
|
152 | struct.pack('H', 0) |
|
153 | ||
154 | def test_byte_length_some_data(self): |
|
155 | TestStruct = Message('TestStruct', [ |
|
156 | ('length_in_objects', 'H', 'vardata'), |
|
157 | ('vardata', self.VarTest, 'length_in_objects'), |
|
158 | (b'length_in_bytes', 'H', 'bytesdata'), |
|
159 | ('bytesdata', self.VarTest, b'length_in_bytes'), |
|
160 | ||
161 | ]) |
|
162 | test_data_no_data = { |
|
163 | 'length_in_objects': 1, |
|
164 | 'vardata': [ |
|
165 | {'x': 255, 'y': 127}, |
|
166 | ], |
|
167 | 'length_in_bytes': 2, |
|
168 | 'bytesdata': [ |
|
169 | {'x': 254, 'y': 126}, |
|
170 | ], |
|
171 | } |
|
172 | ||
173 | made = TestStruct.make(test_data_no_data) |
|
174 | assert made.length_in_objects == 1 |
|
175 | assert made.vardata == [ |
|
176 | self.VarTest.make( |
|
177 | {'x': 255, 'y': 127} |
|
178 | )] |
|
179 | assert made.length_in_bytes == 2 |
|
180 | assert made.bytesdata == [ |
|
181 | self.VarTest.make( |
|
182 | {'x': 254, 'y': 126} |
|
183 | )] |
|
184 | ||
185 | packed = TestStruct.pack(test_data_no_data) |
|
186 | assert packed == \ |
|
187 | struct.pack('H', 1) + \ |
|
188 | struct.pack('BB', 255, 127) + \ |
|
189 | struct.pack('H', 2) + \ |
|
@@ 128-150 (lines=23) @@ | ||
125 | (struct.pack('B', 5) + struct.pack('H', 10)) + \ |
|
126 | (struct.pack('B', 0) + struct.pack('H', 0)) * 2 |
|
127 | ||
128 | def test_byte_length_no_data(self): |
|
129 | TestStruct = Message('TestStruct', [ |
|
130 | ('length_in_objects', 'H', 'vardata'), |
|
131 | ('vardata', self.VarTest, 'length_in_objects'), |
|
132 | (b'length_in_bytes', 'H', 'bytesdata'), |
|
133 | ('bytesdata', self.VarTest, b'length_in_bytes'), |
|
134 | ||
135 | ]) |
|
136 | test_data_no_data = { |
|
137 | 'length_in_objects': 0, |
|
138 | 'vardata': [], |
|
139 | 'length_in_bytes': 0, |
|
140 | 'bytesdata': [], |
|
141 | } |
|
142 | ||
143 | made = TestStruct.make(test_data_no_data) |
|
144 | assert made.length_in_objects == 0 |
|
145 | assert made.vardata == [] |
|
146 | assert made.length_in_bytes == 0 |
|
147 | assert made.bytesdata == [] |
|
148 | ||
149 | packed = TestStruct.pack(test_data_no_data) |
|
150 | assert packed == \ |
|
151 | struct.pack('H', 0) + \ |
|
152 | struct.pack('H', 0) |
|
153 |