aboutsummaryrefslogtreecommitdiffstats
path: root/host/tests/devtest/rx_samples_to_file_test.py
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2015-10-07 15:06:42 -0700
committerMartin Braun <martin.braun@ettus.com>2015-10-07 15:06:42 -0700
commit90b88a27d27c52c337941a99773dfeb70e9c5917 (patch)
treecc620ca5b5ca5d13a05c45a67e2aa2329992c45a /host/tests/devtest/rx_samples_to_file_test.py
parent9401bdbd214a7842c4ba913595cc79e27124589d (diff)
downloaduhd-90b88a27d27c52c337941a99773dfeb70e9c5917.tar.gz
uhd-90b88a27d27c52c337941a99773dfeb70e9c5917.tar.bz2
uhd-90b88a27d27c52c337941a99773dfeb70e9c5917.zip
tests: Added first batch of device tests
- Currently supported: B2xx, X3x0 - Runs some simple examples
Diffstat (limited to 'host/tests/devtest/rx_samples_to_file_test.py')
-rwxr-xr-xhost/tests/devtest/rx_samples_to_file_test.py67
1 files changed, 67 insertions, 0 deletions
diff --git a/host/tests/devtest/rx_samples_to_file_test.py b/host/tests/devtest/rx_samples_to_file_test.py
new file mode 100755
index 000000000..bac6ac256
--- /dev/null
+++ b/host/tests/devtest/rx_samples_to_file_test.py
@@ -0,0 +1,67 @@
+#!/usr/bin/env python
+#
+# Copyright 2015 Ettus Research LLC
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+""" Test the rx_samples_to_file example. """
+
+from uhd_test_base import uhd_example_test_case
+
+class rx_samples_to_file_test(uhd_example_test_case):
+ """
+ Run rx_samples_to_file and check output.
+ """
+ tests = {
+ 'default': {
+ 'duration': 1,
+ 'rate': 5e6,
+ },
+ }
+
+ def setup_example(self):
+ """
+ Set args.
+ """
+ self.test_params = rx_samples_to_file_test.tests
+
+ def run_test(self, test_name, test_args):
+ """
+ Test launcher. Runs the example.
+ """
+ self.log.info('Running test {n}, Subdev = {subdev}, Sample Rate = {rate}'.format(
+ n=test_name, subdev=test_args.get('subdev'), rate=test_args.get('rate'),
+ ))
+ # Run example:
+ args = [
+ self.create_addr_args_str(),
+ '--null',
+ '--stats',
+ '--duration', str(test_args['duration']),
+ '--rate', str(test_args.get('rate', 1e6)),
+ '--wirefmt', test_args.get('wirefmt', 'sc16'),
+ ]
+ if test_args.has_key('subdev'):
+ args.append('--subdev')
+ args.append(test_args['subdev'])
+ (app, run_results) = self.run_example('rx_samples_to_file', args)
+ # Evaluate pass/fail:
+ run_results['passed'] = all([
+ not run_results['has_D'],
+ not run_results['has_S'],
+ run_results['return_code'] == 0,
+ ])
+ self.report_example_results(test_name, run_results)
+ return run_results
+