Statistics
| Branch: | Tag: | Revision:

root / gnuradio-core / src / python / gnuradio / gr / qa_packed_to_unpacked.py @ 7fce7e3b

History | View | Annotate | Download (11.6 kB)

1 5d69a524 jcorgan
#!/usr/bin/env python
2 5d69a524 jcorgan
#
3 2104a9d1 Tom Rondeau
# Copyright 2005,2007,2010 Free Software Foundation, Inc.
4 5d69a524 jcorgan
# 
5 5d69a524 jcorgan
# This file is part of GNU Radio
6 5d69a524 jcorgan
# 
7 5d69a524 jcorgan
# GNU Radio is free software; you can redistribute it and/or modify
8 5d69a524 jcorgan
# it under the terms of the GNU General Public License as published by
9 937b719d eb
# the Free Software Foundation; either version 3, or (at your option)
10 5d69a524 jcorgan
# any later version.
11 5d69a524 jcorgan
# 
12 5d69a524 jcorgan
# GNU Radio is distributed in the hope that it will be useful,
13 5d69a524 jcorgan
# but WITHOUT ANY WARRANTY; without even the implied warranty of
14 5d69a524 jcorgan
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 5d69a524 jcorgan
# GNU General Public License for more details.
16 5d69a524 jcorgan
# 
17 5d69a524 jcorgan
# You should have received a copy of the GNU General Public License
18 5d69a524 jcorgan
# along with GNU Radio; see the file COPYING.  If not, write to
19 86f5c924 eb
# the Free Software Foundation, Inc., 51 Franklin Street,
20 86f5c924 eb
# Boston, MA 02110-1301, USA.
21 5d69a524 jcorgan
# 
22 5d69a524 jcorgan
23 5d69a524 jcorgan
from gnuradio import gr, gr_unittest
24 5d69a524 jcorgan
import random
25 5d69a524 jcorgan
26 5d69a524 jcorgan
class test_packing(gr_unittest.TestCase):
27 5d69a524 jcorgan
28 5d69a524 jcorgan
    def setUp(self):
29 3c443c0b jcorgan
        self.tb = gr.top_block ()
30 5d69a524 jcorgan
31 5d69a524 jcorgan
    def tearDown(self):
32 3c443c0b jcorgan
        self.tb = None
33 5d69a524 jcorgan
34 5d69a524 jcorgan
    def test_001(self):
35 5d69a524 jcorgan
        """
36 5d69a524 jcorgan
        Test stream_to_streams.
37 5d69a524 jcorgan
        """
38 5d69a524 jcorgan
        src_data = (0x80,)
39 5d69a524 jcorgan
        expected_results = (1,0,0,0,0,0,0,0)
40 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
41 5d69a524 jcorgan
        op = gr.packed_to_unpacked_bb(1, gr.GR_MSB_FIRST)
42 3c443c0b jcorgan
        self.tb.connect(src, op)
43 5d69a524 jcorgan
        
44 5d69a524 jcorgan
        dst = gr.vector_sink_b()
45 3c443c0b jcorgan
        self.tb.connect(op, dst)
46 5d69a524 jcorgan
47 3c443c0b jcorgan
        self.tb.run()
48 5d69a524 jcorgan
49 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
50 5d69a524 jcorgan
51 5d69a524 jcorgan
    def test_002(self):
52 5d69a524 jcorgan
        """
53 5d69a524 jcorgan
        Test stream_to_streams.
54 5d69a524 jcorgan
        """
55 5d69a524 jcorgan
        src_data = (0x80,)
56 5d69a524 jcorgan
        expected_results = (0,0,0,0,0,0,0, 1)
57 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
58 5d69a524 jcorgan
        op = gr.packed_to_unpacked_bb(1, gr.GR_LSB_FIRST)
59 3c443c0b jcorgan
        self.tb.connect(src, op)
60 5d69a524 jcorgan
        
61 5d69a524 jcorgan
        dst = gr.vector_sink_b()
62 3c443c0b jcorgan
        self.tb.connect(op, dst)
63 5d69a524 jcorgan
64 3c443c0b jcorgan
        self.tb.run()
65 5d69a524 jcorgan
66 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
67 5d69a524 jcorgan
68 5d69a524 jcorgan
    def test_003(self):
69 5d69a524 jcorgan
        """
70 5d69a524 jcorgan
        Test stream_to_streams.
71 5d69a524 jcorgan
        """
72 5d69a524 jcorgan
        src_data = (0x11,)
73 5d69a524 jcorgan
        expected_results = (4, 2)
74 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
75 5d69a524 jcorgan
        op = gr.packed_to_unpacked_bb(3, gr.GR_LSB_FIRST)
76 3c443c0b jcorgan
        self.tb.connect(src, op)
77 5d69a524 jcorgan
        
78 5d69a524 jcorgan
        dst = gr.vector_sink_b()
79 3c443c0b jcorgan
        self.tb.connect(op, dst)
80 5d69a524 jcorgan
81 3c443c0b jcorgan
        self.tb.run()
82 5d69a524 jcorgan
83 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
84 5d69a524 jcorgan
85 5d69a524 jcorgan
    def test_004(self):
86 5d69a524 jcorgan
        """
87 5d69a524 jcorgan
        Test stream_to_streams.
88 5d69a524 jcorgan
        """
89 5d69a524 jcorgan
        src_data = (0x11,)
90 5d69a524 jcorgan
        expected_results = (0, 4)
91 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
92 5d69a524 jcorgan
        op = gr.packed_to_unpacked_bb(3, gr.GR_MSB_FIRST)
93 3c443c0b jcorgan
        self.tb.connect(src, op)
94 5d69a524 jcorgan
        
95 5d69a524 jcorgan
        dst = gr.vector_sink_b()
96 3c443c0b jcorgan
        self.tb.connect(op, dst)
97 5d69a524 jcorgan
98 3c443c0b jcorgan
        self.tb.run()
99 5d69a524 jcorgan
100 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
101 5d69a524 jcorgan
102 5d69a524 jcorgan
    def test_005(self):
103 5d69a524 jcorgan
        """
104 5d69a524 jcorgan
        Test stream_to_streams.
105 5d69a524 jcorgan
        """
106 5d69a524 jcorgan
        src_data = (1,0,0,0,0,0,1,0,0,1,0,1,1,0,1,0)
107 5d69a524 jcorgan
        expected_results =  (0x82,0x5a)
108 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
109 5d69a524 jcorgan
        op = gr.unpacked_to_packed_bb(1, gr.GR_MSB_FIRST)
110 3c443c0b jcorgan
        self.tb.connect(src, op)
111 5d69a524 jcorgan
        
112 5d69a524 jcorgan
        dst = gr.vector_sink_b()
113 3c443c0b jcorgan
        self.tb.connect(op, dst)
114 5d69a524 jcorgan
115 3c443c0b jcorgan
        self.tb.run()
116 5d69a524 jcorgan
117 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
118 5d69a524 jcorgan
119 5d69a524 jcorgan
    def test_006(self):
120 5d69a524 jcorgan
        """
121 5d69a524 jcorgan
        Test stream_to_streams.
122 5d69a524 jcorgan
        """
123 5d69a524 jcorgan
        src_data = (0,1,0,0,0,0,0,1,0,1,0,1,1,0,1,0)
124 5d69a524 jcorgan
        expected_results =  (0x82,0x5a)
125 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
126 5d69a524 jcorgan
        op = gr.unpacked_to_packed_bb(1, gr.GR_LSB_FIRST)
127 3c443c0b jcorgan
        self.tb.connect(src, op)
128 5d69a524 jcorgan
        
129 5d69a524 jcorgan
        dst = gr.vector_sink_b()
130 3c443c0b jcorgan
        self.tb.connect(op, dst)
131 5d69a524 jcorgan
132 3c443c0b jcorgan
        self.tb.run()
133 5d69a524 jcorgan
134 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
135 5d69a524 jcorgan
136 5d69a524 jcorgan
137 5d69a524 jcorgan
    def test_007(self):
138 5d69a524 jcorgan
        """
139 5d69a524 jcorgan
        Test stream_to_streams.
140 5d69a524 jcorgan
        """
141 5d69a524 jcorgan
        src_data = (4, 2, 0,0,0)
142 5d69a524 jcorgan
        expected_results = (0x11,)
143 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
144 5d69a524 jcorgan
        op = gr.unpacked_to_packed_bb(3, gr.GR_LSB_FIRST)
145 3c443c0b jcorgan
        self.tb.connect(src, op)
146 5d69a524 jcorgan
        
147 5d69a524 jcorgan
        dst = gr.vector_sink_b()
148 3c443c0b jcorgan
        self.tb.connect(op, dst)
149 5d69a524 jcorgan
150 3c443c0b jcorgan
        self.tb.run()
151 5d69a524 jcorgan
152 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
153 5d69a524 jcorgan
154 5d69a524 jcorgan
    def test_008(self):
155 5d69a524 jcorgan
        """
156 5d69a524 jcorgan
        Test stream_to_streams.
157 5d69a524 jcorgan
        """
158 5d69a524 jcorgan
        src_data = (0, 4, 2,0,0)
159 5d69a524 jcorgan
        expected_results = (0x11,)
160 5d69a524 jcorgan
        src = gr.vector_source_b(src_data,False)
161 5d69a524 jcorgan
        op = gr.unpacked_to_packed_bb(3, gr.GR_MSB_FIRST)
162 3c443c0b jcorgan
        self.tb.connect(src, op)
163 5d69a524 jcorgan
        
164 5d69a524 jcorgan
        dst = gr.vector_sink_b()
165 3c443c0b jcorgan
        self.tb.connect(op, dst)
166 5d69a524 jcorgan
167 3c443c0b jcorgan
        self.tb.run()
168 5d69a524 jcorgan
169 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
170 5d69a524 jcorgan
171 5d69a524 jcorgan
    def test_009(self):
172 5d69a524 jcorgan
        """
173 5d69a524 jcorgan
        Test stream_to_streams.
174 5d69a524 jcorgan
        """
175 5d69a524 jcorgan
176 5d69a524 jcorgan
        random.seed(0)
177 5d69a524 jcorgan
        src_data = []
178 5d69a524 jcorgan
        for i in xrange(202):
179 5d69a524 jcorgan
            src_data.append((random.randint(0,255)))
180 5d69a524 jcorgan
        src_data = tuple(src_data)
181 5d69a524 jcorgan
        expected_results = src_data
182 5d69a524 jcorgan
183 5d69a524 jcorgan
        src = gr.vector_source_b(tuple(src_data),False)
184 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_bb(3, gr.GR_MSB_FIRST)
185 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_bb(3, gr.GR_MSB_FIRST)
186 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
187 5d69a524 jcorgan
        
188 5d69a524 jcorgan
        dst = gr.vector_sink_b()
189 3c443c0b jcorgan
        self.tb.connect(op2, dst)
190 5d69a524 jcorgan
191 3c443c0b jcorgan
        self.tb.run()
192 5d69a524 jcorgan
        
193 5d69a524 jcorgan
        self.assertEqual(expected_results[0:201], dst.data())
194 5d69a524 jcorgan
195 5d69a524 jcorgan
    def test_010(self):
196 5d69a524 jcorgan
        """
197 5d69a524 jcorgan
        Test stream_to_streams.
198 5d69a524 jcorgan
        """
199 5d69a524 jcorgan
200 5d69a524 jcorgan
        random.seed(0)
201 5d69a524 jcorgan
        src_data = []
202 5d69a524 jcorgan
        for i in xrange(56):
203 5d69a524 jcorgan
            src_data.append((random.randint(0,255)))
204 5d69a524 jcorgan
        src_data = tuple(src_data)
205 5d69a524 jcorgan
        expected_results = src_data
206 5d69a524 jcorgan
        src = gr.vector_source_b(tuple(src_data),False)
207 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_bb(7, gr.GR_MSB_FIRST)
208 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_bb(7, gr.GR_MSB_FIRST)
209 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
210 5d69a524 jcorgan
        dst = gr.vector_sink_b()
211 3c443c0b jcorgan
        self.tb.connect(op2, dst)
212 5d69a524 jcorgan
213 3c443c0b jcorgan
        self.tb.run()
214 5d69a524 jcorgan
        self.assertEqual(expected_results[0:201], dst.data())
215 5d69a524 jcorgan
216 5d69a524 jcorgan
    def test_011(self):
217 5d69a524 jcorgan
        """
218 5d69a524 jcorgan
        Test stream_to_streams.
219 5d69a524 jcorgan
        """
220 5d69a524 jcorgan
221 5d69a524 jcorgan
        random.seed(0)
222 5d69a524 jcorgan
        src_data = []
223 5d69a524 jcorgan
        for i in xrange(56):
224 5d69a524 jcorgan
            src_data.append((random.randint(0,255)))
225 5d69a524 jcorgan
        src_data = tuple(src_data)
226 5d69a524 jcorgan
        expected_results = src_data
227 5d69a524 jcorgan
        src = gr.vector_source_b(tuple(src_data),False)
228 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_bb(7, gr.GR_LSB_FIRST)
229 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_bb(7, gr.GR_LSB_FIRST)
230 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
231 5d69a524 jcorgan
        dst = gr.vector_sink_b()
232 3c443c0b jcorgan
        self.tb.connect(op2, dst)
233 5d69a524 jcorgan
234 3c443c0b jcorgan
        self.tb.run()
235 5d69a524 jcorgan
        self.assertEqual(expected_results[0:201], dst.data())
236 5d69a524 jcorgan
        
237 5d69a524 jcorgan
238 5d69a524 jcorgan
    # tests on shorts
239 5d69a524 jcorgan
    
240 5d69a524 jcorgan
    def test_100a(self):
241 5d69a524 jcorgan
        """
242 5d69a524 jcorgan
        test short version
243 5d69a524 jcorgan
        """
244 5d69a524 jcorgan
        random.seed(0)
245 5d69a524 jcorgan
        src_data = []
246 5d69a524 jcorgan
        for i in xrange(100):
247 5d69a524 jcorgan
            src_data.append((random.randint(-2**15,2**15-1)))
248 5d69a524 jcorgan
        src_data = tuple(src_data)
249 5d69a524 jcorgan
        expected_results = src_data
250 5d69a524 jcorgan
        src = gr.vector_source_s(tuple(src_data),False)
251 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ss(1, gr.GR_MSB_FIRST)
252 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ss(1, gr.GR_MSB_FIRST)
253 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
254 5d69a524 jcorgan
        dst = gr.vector_sink_s()
255 3c443c0b jcorgan
        self.tb.connect(op2, dst)
256 5d69a524 jcorgan
257 3c443c0b jcorgan
        self.tb.run()
258 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
259 5d69a524 jcorgan
260 5d69a524 jcorgan
    def test_100b(self):
261 5d69a524 jcorgan
        """
262 5d69a524 jcorgan
        test short version
263 5d69a524 jcorgan
        """
264 5d69a524 jcorgan
        random.seed(0)
265 5d69a524 jcorgan
        src_data = []
266 5d69a524 jcorgan
        for i in xrange(100):
267 5d69a524 jcorgan
            src_data.append((random.randint(-2**15,2**15-1)))
268 5d69a524 jcorgan
        src_data = tuple(src_data)
269 5d69a524 jcorgan
        expected_results = src_data
270 5d69a524 jcorgan
        src = gr.vector_source_s(tuple(src_data),False)
271 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ss(1, gr.GR_LSB_FIRST)
272 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ss(1, gr.GR_LSB_FIRST)
273 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
274 5d69a524 jcorgan
        dst = gr.vector_sink_s()
275 3c443c0b jcorgan
        self.tb.connect(op2, dst)
276 5d69a524 jcorgan
277 3c443c0b jcorgan
        self.tb.run()
278 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
279 5d69a524 jcorgan
280 5d69a524 jcorgan
    def test_101a(self):
281 5d69a524 jcorgan
        """
282 5d69a524 jcorgan
        test short version
283 5d69a524 jcorgan
        """
284 5d69a524 jcorgan
        random.seed(0)
285 5d69a524 jcorgan
        src_data = []
286 5d69a524 jcorgan
        for i in xrange(100):
287 5d69a524 jcorgan
            src_data.append((random.randint(-2**15,2**15-1)))
288 5d69a524 jcorgan
        src_data = tuple(src_data)
289 5d69a524 jcorgan
        expected_results = src_data
290 5d69a524 jcorgan
        src = gr.vector_source_s(tuple(src_data),False)
291 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ss(8, gr.GR_MSB_FIRST)
292 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ss(8, gr.GR_MSB_FIRST)
293 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
294 5d69a524 jcorgan
        dst = gr.vector_sink_s()
295 3c443c0b jcorgan
        self.tb.connect(op2, dst)
296 5d69a524 jcorgan
297 3c443c0b jcorgan
        self.tb.run()
298 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
299 5d69a524 jcorgan
300 5d69a524 jcorgan
    def test_101b(self):
301 5d69a524 jcorgan
        """
302 5d69a524 jcorgan
        test short version
303 5d69a524 jcorgan
        """
304 5d69a524 jcorgan
        random.seed(0)
305 5d69a524 jcorgan
        src_data = []
306 5d69a524 jcorgan
        for i in xrange(100):
307 5d69a524 jcorgan
            src_data.append((random.randint(-2**15,2**15-1)))
308 5d69a524 jcorgan
        src_data = tuple(src_data)
309 5d69a524 jcorgan
        expected_results = src_data
310 5d69a524 jcorgan
        src = gr.vector_source_s(tuple(src_data),False)
311 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ss(8, gr.GR_LSB_FIRST)
312 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ss(8, gr.GR_LSB_FIRST)
313 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
314 5d69a524 jcorgan
        dst = gr.vector_sink_s()
315 3c443c0b jcorgan
        self.tb.connect(op2, dst)
316 5d69a524 jcorgan
317 3c443c0b jcorgan
        self.tb.run()
318 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
319 5d69a524 jcorgan
320 5d69a524 jcorgan
    # tests on ints
321 5d69a524 jcorgan
    
322 5d69a524 jcorgan
    def test_200a(self):
323 5d69a524 jcorgan
        """
324 5d69a524 jcorgan
        test int version
325 5d69a524 jcorgan
        """
326 5d69a524 jcorgan
        random.seed(0)
327 5d69a524 jcorgan
        src_data = []
328 5d69a524 jcorgan
        for i in xrange(100):
329 5d69a524 jcorgan
            src_data.append((random.randint(-2**31,2**31-1)))
330 5d69a524 jcorgan
        src_data = tuple(src_data)
331 5d69a524 jcorgan
        expected_results = src_data
332 5d69a524 jcorgan
        src = gr.vector_source_i(tuple(src_data),False)
333 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ii(1, gr.GR_MSB_FIRST)
334 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ii(1, gr.GR_MSB_FIRST)
335 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
336 5d69a524 jcorgan
        dst = gr.vector_sink_i()
337 3c443c0b jcorgan
        self.tb.connect(op2, dst)
338 5d69a524 jcorgan
339 3c443c0b jcorgan
        self.tb.run()
340 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
341 5d69a524 jcorgan
342 5d69a524 jcorgan
    def test_200b(self):
343 5d69a524 jcorgan
        """
344 5d69a524 jcorgan
        test int version
345 5d69a524 jcorgan
        """
346 5d69a524 jcorgan
        random.seed(0)
347 5d69a524 jcorgan
        src_data = []
348 5d69a524 jcorgan
        for i in xrange(100):
349 5d69a524 jcorgan
            src_data.append((random.randint(-2**31,2**31-1)))
350 5d69a524 jcorgan
        src_data = tuple(src_data)
351 5d69a524 jcorgan
        expected_results = src_data
352 5d69a524 jcorgan
        src = gr.vector_source_i(tuple(src_data),False)
353 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ii(1, gr.GR_LSB_FIRST)
354 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ii(1, gr.GR_LSB_FIRST)
355 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
356 5d69a524 jcorgan
        dst = gr.vector_sink_i()
357 3c443c0b jcorgan
        self.tb.connect(op2, dst)
358 5d69a524 jcorgan
359 3c443c0b jcorgan
        self.tb.run()
360 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
361 5d69a524 jcorgan
362 5d69a524 jcorgan
    def test_201a(self):
363 5d69a524 jcorgan
        """
364 5d69a524 jcorgan
        test int version
365 5d69a524 jcorgan
        """
366 5d69a524 jcorgan
        random.seed(0)
367 5d69a524 jcorgan
        src_data = []
368 5d69a524 jcorgan
        for i in xrange(100):
369 5d69a524 jcorgan
            src_data.append((random.randint(-2**31,2**31-1)))
370 5d69a524 jcorgan
        src_data = tuple(src_data)
371 5d69a524 jcorgan
        expected_results = src_data
372 5d69a524 jcorgan
        src = gr.vector_source_i(tuple(src_data),False)
373 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ii(8, gr.GR_MSB_FIRST)
374 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ii(8, gr.GR_MSB_FIRST)
375 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
376 5d69a524 jcorgan
        dst = gr.vector_sink_i()
377 3c443c0b jcorgan
        self.tb.connect(op2, dst)
378 5d69a524 jcorgan
379 3c443c0b jcorgan
        self.tb.run()
380 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
381 5d69a524 jcorgan
382 5d69a524 jcorgan
    def test_201b(self):
383 5d69a524 jcorgan
        """
384 5d69a524 jcorgan
        test int version
385 5d69a524 jcorgan
        """
386 5d69a524 jcorgan
        random.seed(0)
387 5d69a524 jcorgan
        src_data = []
388 5d69a524 jcorgan
        for i in xrange(100):
389 5d69a524 jcorgan
            src_data.append((random.randint(-2**31,2**31-1)))
390 5d69a524 jcorgan
        src_data = tuple(src_data)
391 5d69a524 jcorgan
        expected_results = src_data
392 5d69a524 jcorgan
        src = gr.vector_source_i(tuple(src_data),False)
393 5d69a524 jcorgan
        op1 = gr.packed_to_unpacked_ii(8, gr.GR_LSB_FIRST)
394 5d69a524 jcorgan
        op2 = gr.unpacked_to_packed_ii(8, gr.GR_LSB_FIRST)
395 3c443c0b jcorgan
        self.tb.connect(src, op1, op2)
396 5d69a524 jcorgan
        dst = gr.vector_sink_i()
397 3c443c0b jcorgan
        self.tb.connect(op2, dst)
398 5d69a524 jcorgan
399 3c443c0b jcorgan
        self.tb.run()
400 5d69a524 jcorgan
        self.assertEqual(expected_results, dst.data())
401 5d69a524 jcorgan
402 5d69a524 jcorgan
403 5d69a524 jcorgan
if __name__ == '__main__':
404 2104a9d1 Tom Rondeau
   gr_unittest.run(test_packing, "test_packing.xml")
405 5d69a524 jcorgan