From 2b71b8b428379e2c3492f26dfcd46ea024d35701 Mon Sep 17 00:00:00 2001
From: Tom Rondeau <trondeau@vt.edu>
Date: Mon, 7 Jan 2013 13:49:23 -0500
Subject: vocoder: updating QA test for vocoders.

---
 gr-vocoder/python/qa_alaw_vocoder.py    | 15 ++++++++++++---
 gr-vocoder/python/qa_codec2_vocoder.py  | 25 ++++++++++++++++++++++---
 gr-vocoder/python/qa_cvsd_vocoder.py    |  8 ++++----
 gr-vocoder/python/qa_g721_vocoder.py    | 14 +++++++++++---
 gr-vocoder/python/qa_g723_24_vocoder.py | 13 ++++++++++---
 gr-vocoder/python/qa_g723_40_vocoder.py | 13 ++++++++++---
 gr-vocoder/python/qa_gsm_full_rate.py   | 27 ++++++++++++++++++++++++---
 gr-vocoder/python/qa_ulaw_vocoder.py    | 14 +++++++++++---
 8 files changed, 104 insertions(+), 25 deletions(-)

(limited to 'gr-vocoder/python')

diff --git a/gr-vocoder/python/qa_alaw_vocoder.py b/gr-vocoder/python/qa_alaw_vocoder.py
index 07d0feb58e..a8d65409e5 100755
--- a/gr-vocoder/python/qa_alaw_vocoder.py
+++ b/gr-vocoder/python/qa_alaw_vocoder.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2011 Free Software Foundation, Inc.
+# Copyright 2011,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,17 @@ class test_alaw_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        enc = alaw_encode_sb();
-        dec = alaw_decode_bs();
+        data = (8,24,40,56,72,88,104,120,136,152,168,184,
+                200,216,232,248,264,280,296,312,328,344)
+        src = gr.vector_source_s(data)
+        enc = alaw_encode_sb()
+        dec = alaw_decode_bs()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(data, actual_result)
+        
 
 if __name__ == '__main__':
     gr_unittest.run(test_alaw_vocoder, "test_alaw_vocoder.xml")
diff --git a/gr-vocoder/python/qa_codec2_vocoder.py b/gr-vocoder/python/qa_codec2_vocoder.py
index 2f707b3114..7f38904459 100755
--- a/gr-vocoder/python/qa_codec2_vocoder.py
+++ b/gr-vocoder/python/qa_codec2_vocoder.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2011 Free Software Foundation, Inc.
+# Copyright 2011,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,27 @@ class test_codec2_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        raw_enc = codec2_encode_sp();
-        raw_dec = codec2_decode_ps();
+        data = 20*(100,200,300,400,500,600,700,800)
+        expected_data = (0,0,0,3,2,0,1,5,6,7,1,-1,0,-5,-11,-10,-20,-22,
+                         -20,-20,-27,-26,-36,-48,-59,-24,5,-7,-12,-27,-22,
+                         -22,-16,13,20,39,23,25,8,-6,15,44,97,135,145,125,
+                         94,102,126,129,165,192,180,132,99,79,73,83,72,47,
+                         40,0,-32,-46,-67,-99,-123,-114,-87,-108,-131,-152,
+                         -181,-245,-348,-294,-101,-71,-85,-26,99,123,15,2,77,
+                         13,-117,-145,-105,-39,-50,-89,-59,-77,-134,-95,-51,
+                         -22,17,-19,-59,-74,-103,-78,4,77,113,60,18,13,-67,
+                         -49,24,88,179,190,89,18,-90,-102,-50,-5,123,135,57,
+                         31,-82,-98,-51,6,93,104,44,-5,-84,-107,-44,45,102,104,
+                         15,-47,-107,-126,-87,-11,89,93,13,-95,-136,-187,-70,
+                         -167,216,-70,-103,175,-284,-486)
+        src = gr.vector_source_s(data)
+        enc = codec2_encode_sp()
+        dec = codec2_decode_ps()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(expected_data, actual_result)
 
 if __name__ == '__main__':
     gr_unittest.run(test_codec2_vocoder, "test_codec2_vocoder.xml")
diff --git a/gr-vocoder/python/qa_cvsd_vocoder.py b/gr-vocoder/python/qa_cvsd_vocoder.py
index 579b019cc9..42cb7f19b9 100755
--- a/gr-vocoder/python/qa_cvsd_vocoder.py
+++ b/gr-vocoder/python/qa_cvsd_vocoder.py
@@ -35,10 +35,10 @@ class test_cvsd_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        raw_enc = cvsd_encode_sb();
-        raw_dec = cvsd_decode_bs();
-        hb_enc = cvsd_encode_fb();
-        hb_dec = cvsd_decode_bf();
+        raw_enc = cvsd_encode_sb()
+        raw_dec = cvsd_decode_bs()
+        hb_enc = cvsd_encode_fb()
+        hb_dec = cvsd_decode_bf()
 
 
     """ Disable for now
diff --git a/gr-vocoder/python/qa_g721_vocoder.py b/gr-vocoder/python/qa_g721_vocoder.py
index 26fcea7895..e6ac04e155 100755
--- a/gr-vocoder/python/qa_g721_vocoder.py
+++ b/gr-vocoder/python/qa_g721_vocoder.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2011 Free Software Foundation, Inc.
+# Copyright 2011,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,16 @@ class test_g721_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        enc = g721_encode_sb();
-        dec = g721_decode_bs();
+        data = (8,24,36,52,56,64,76,88,104,124,132,148,172,
+                196,220,244,280,320,372,416,468,524,580,648)
+        src = gr.vector_source_s(data)
+        enc = g721_encode_sb()
+        dec = g721_decode_bs()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(data, actual_result)
 
 if __name__ == '__main__':
     gr_unittest.run(test_g721_vocoder, "test_g721_vocoder.xml")
diff --git a/gr-vocoder/python/qa_g723_24_vocoder.py b/gr-vocoder/python/qa_g723_24_vocoder.py
index be95a8d94f..eda9ed86bd 100755
--- a/gr-vocoder/python/qa_g723_24_vocoder.py
+++ b/gr-vocoder/python/qa_g723_24_vocoder.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2011 Free Software Foundation, Inc.
+# Copyright 2011,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,15 @@ class test_g723_24_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        enc = g723_24_encode_sb();
-        dec = g723_24_decode_bs();
+        data = (0,16,36,40,68,104,148,220,320,512)
+        src = gr.vector_source_s(data)
+        enc = g723_24_encode_sb()
+        dec = g723_24_decode_bs()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(data, actual_result)
 
 if __name__ == '__main__':
     gr_unittest.run(test_g723_24_vocoder, "test_g723_24_vocoder.xml")
diff --git a/gr-vocoder/python/qa_g723_40_vocoder.py b/gr-vocoder/python/qa_g723_40_vocoder.py
index abbb4079a4..db6b7538f3 100755
--- a/gr-vocoder/python/qa_g723_40_vocoder.py
+++ b/gr-vocoder/python/qa_g723_40_vocoder.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2011 Free Software Foundation, Inc.
+# Copyright 2011,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,15 @@ class test_g723_40_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        enc = g723_40_encode_sb();
-        dec = g723_40_decode_bs();
+        data = (0,8,36,72,100,152,228,316,404,528)
+        src = gr.vector_source_s(data)
+        enc = g723_40_encode_sb()
+        dec = g723_40_decode_bs()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(data, actual_result)
 
 if __name__ == '__main__':
     gr_unittest.run(test_g723_40_vocoder, "test_g723_40_vocoder.xml")
diff --git a/gr-vocoder/python/qa_gsm_full_rate.py b/gr-vocoder/python/qa_gsm_full_rate.py
index 2e551e193d..4a7692ecd4 100755
--- a/gr-vocoder/python/qa_gsm_full_rate.py
+++ b/gr-vocoder/python/qa_gsm_full_rate.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2004,2007,2010 Free Software Foundation, Inc.
+# Copyright 2004,2007,2010,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,29 @@ class test_gsm_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        enc = vocoder_swig.gsm_fr_encode_sp();
-        dec = vocoder_swig.gsm_fr_decode_ps();
+        data = 20*(100,200,300,400,500,600,700,800)
+        expected_data = (0,0,360,304,256,720,600,504,200,144,128,464,
+                         376,384,680,576,440,264,176,176,640,520,480,
+                         464,384,288,432,296,328,760,624,504,176,96,96,
+                         416,312,360,808,672,216,104,136,504,376,448,
+                         720,608,296,304,176,336,576,456,560,512,320,
+                         216,344,264,456,672,576,488,192,80,152,424,
+                         368,552,688,560,280,200,104,256,520,464,608,
+                         488,184,104,16,472,456,360,696,568,208,136,88,
+                         376,480,456,616,472,232,224,264,320,512,624,
+                         632,520,176,80,192,304,400,592,664,552,248,152,
+                         144,336,440,520,616,664,304,176,80,536,448,376,
+                         680,600,240,168,112,408,488,472,608,480,240,232,
+                         208,288,480,600,616,520,176,88,184,296,392,584,
+                         656,552,248,160,144,336,432,512,608,664)
+        src = gr.vector_source_s(data)
+        enc = vocoder_swig.gsm_fr_encode_sp()
+        dec = vocoder_swig.gsm_fr_decode_ps()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(expected_data, actual_result)
 
 if __name__ == '__main__':
     gr_unittest.run(test_gsm_vocoder, "test_gsm_vocoder.xml")
diff --git a/gr-vocoder/python/qa_ulaw_vocoder.py b/gr-vocoder/python/qa_ulaw_vocoder.py
index 2bc6385676..a87aae762c 100755
--- a/gr-vocoder/python/qa_ulaw_vocoder.py
+++ b/gr-vocoder/python/qa_ulaw_vocoder.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 #
-# Copyright 2011 Free Software Foundation, Inc.
+# Copyright 2011,2013 Free Software Foundation, Inc.
 #
 # This file is part of GNU Radio
 #
@@ -32,8 +32,16 @@ class test_ulaw_vocoder (gr_unittest.TestCase):
         self.tb = None
 
     def test001_module_load (self):
-        enc = ulaw_encode_sb();
-        dec = ulaw_decode_bs();
+        data = (8,24,40,56,72,88,104,120,132,148,164,180,
+                196,212,228,244,260,276,292,308,324,340)
+        src = gr.vector_source_s(data)
+        enc = ulaw_encode_sb()
+        dec = ulaw_decode_bs()
+        snk = gr.vector_sink_s()
+        self.tb.connect(src, enc, dec, snk)
+        self.tb.run()
+        actual_result = snk.data()
+        self.assertEqual(data, actual_result)
 
 if __name__ == '__main__':
     gr_unittest.run(test_ulaw_vocoder, "test_ulaw_vocoder.xml")
-- 
cgit v1.2.3