| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
At this point, this test chokes an RX streamer to force an overrun. It
then confirms that the overrun message is returned to the call site, and
that the streamer returns to continuous streaming after the overrun
handling.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
See the CMake 3.8 documentation on these two variables:
https://cmake.org/cmake/help/v3.8/variable/PROJECT-NAME_SOURCE_DIR.html
https://cmake.org/cmake/help/v3.8/variable/CMAKE_SOURCE_DIR.html
Under normal circumstances, these two are identical. For sub-projects
(i.e., when building UHD as part of something else that is also a CMake
project), only the former is useful. There is no discernible downside of
using UHD_SOURCE_DIR over CMAKE_SOURCE_DIR.
This was changed using sed:
$ sed -i "s/CMAKE_SOURCE_DIR/UHD_SOURCE_DIR/g" \
`ag -l CMAKE_SOURCE_DIR **/{CMakeLists.txt,*.cmake}`
$ sed -i "s/CMAKE_BINARY_DIR/UHD_BINARY_DIR/g" \
`ag -l CMAKE_BINARY_DIR **/{CMakeLists.txt,*.cmake}`
At the same time, we also replace the CMake variable UHD_HOST_ROOT (used
in MPM) with UHD_SOURCE_DIR. There's no reason to have two variables
with the same meaning and different names, but more importantly, this
means that UHD_SOURCE_DIR is defined even in those cases where MPM calls
into CMake files from UHD without any additional patches.
Shoutout to GitHub user marcobergamin for bringing this up.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Co-authored-by: Lars Amsel <lars.amsel@ni.com>
Co-authored-by: Michael Auchter <michael.auchter@ni.com>
Co-authored-by: Martin Braun <martin.braun@ettus.com>
Co-authored-by: Paul Butler <paul.butler@ni.com>
Co-authored-by: Cristina Fuentes <cristina.fuentes-curiel@ni.com>
Co-authored-by: Humberto Jimenez <humberto.jimenez@ni.com>
Co-authored-by: Virendra Kakade <virendra.kakade@ni.com>
Co-authored-by: Lane Kolbly <lane.kolbly@ni.com>
Co-authored-by: Max Köhler <max.koehler@ni.com>
Co-authored-by: Andrew Lynch <andrew.lynch@ni.com>
Co-authored-by: Grant Meyerhoff <grant.meyerhoff@ni.com>
Co-authored-by: Ciro Nishiguchi <ciro.nishiguchi@ni.com>
Co-authored-by: Thomas Vogel <thomas.vogel@ni.com>
|
|
|
|
|
|
|
| |
Fixes some minor reporting issues that occurred in devtest streaming
tests with only rx or only tx.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
|
|
| |
This change makes it such that python_api_test.py will spawn
a subprocess for multi_usrp_test.py by explicitly calling the Python
interpreter, and making the path to multi_usrp_test.py the first
argument.
This fixes running this devtest after installing Python tests via ipks
on embedded devices.
|
|
|
|
|
|
|
|
|
|
| |
Many updates to this test. Most tests weren't even working properly.
Highlights:
- Add device-specific configuration. Includes defaults, but also the
option to specify a YAML file.
- Improved output for better readability
- Made a whole bunch of tests work
|
|
|
|
|
|
|
|
|
|
|
| |
Like the example test, the Python-based test is now codified. The
"special sauce" for Python tests revolves around the fact that they
require the Python API, so we have to gracefully fail if the Python API
was never enabled, but hard-fail when the Python API is enabled, but not
working.
This creates a new type of devtest (UHDPythonTestCase) and moves
uhd_python_api_test over to the new type.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is substantially the same as 7b86a47, but implemented in a ninja
supported way. ninja doesn't allow for arguments, so this uses an environment
variable. This is compatible with both make and ninja. The only change
from the calling point of view is you must set the environment variable
before calling "make test_[devicetype]" instead of after as an arg.
This allows running devtests for a single device instead of all connected devices
or selecting a specific network interface.
Set the additional device arguments with the EXTRA_DEV_ARGS variable.
This can be set as an environment variable or on the command line.
For example: EXTRA_DEV_ARGS=addr=192.168.30.2 make test_x3x0
Also-by: Matthew Crymble <matthew.crymble@ni.com>
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
| |
This reverts commit 7b86a47bf7143df1cac252602e3c9ddbdd871d90.
This was causing issues when building UHD with ninja
|
|
|
|
| |
Using 12.5 MS/s exceeded the maximum throughput when using 4 channels over 1 GbE
|
|
|
|
|
|
|
|
|
| |
This allows running devtests for a single device instead of all connected devices
or selecting a specific network interface.
Set the additional device arguments with the EXTRA_DEV_ARGS variable.
This can be set as an environment variable or on the command line.
For example: make test_x3x0 EXTRA_DEV_ARGS=addr=192.168.30.2
|
|
|
|
|
|
|
| |
If the unittests are invoked with an extra argument -x, an XML report
is generated.
This depends on the python module unittest-xml-reporting (aka. xmlrunner).
|
| |
|
|
|
|
|
|
| |
Windows requires the command 'python' to prepend calls to .py files.
This change moves the path to multi_usrp_test.py to an argument on
Windows.
|
|
|
|
| |
Filter for e3x0 no longer matches e31x devices. Switch to e3xx.
|
|
|
|
|
| |
This is an advanced API call that allows direct underlying
access to the radio_control object for RFNoC devices.
|
|
|
|
| |
Before this, the python_api_test didn't assert an error when it failed.
|
|
|
|
|
|
|
|
| |
One of the devtests (the python_api_test) gets skipped without failures
if the uhd module can't be loaded. However, this can mask errors if the
uhd module can't be loaded because it's broken. This change will verify
if the uhd module should have been loaded, and throw an error if that's
the case.
|
| |
|
|
|
|
|
|
|
|
| |
This is a test that automatically executes API calls. The following
tests were broken:
- clock source: On B200mini, we need to set the time source back to
internal to test the clock source.
- The filter API call tests did not match the API calls themselves
|
|
|
|
|
| |
This will allow run_testsuite.py to be called for specific devices instead
of all devices for a certain type.
|
|
|
|
| |
This removes 'six' as a dependency for devtest.
|
|
|
|
|
|
|
| |
This changes two things in all applicable files:
- Remove imports from __future__
- Change default shebangs from /usr/bin/env python to /usr/bin/env
python3
|
|
|
|
|
|
| |
Print output from stdout and stderr upon error.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
Adding necessary code to examine number of TX and RX channels and adjust
test cases accordingly.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
|
| |
Adding method to get number of TX and RX channels to usrp_probe.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
Allow success if testing either TX or RX. Previously required both TX
and RX to be tested simultaneously.
Signed-off-by: Michael West <michael.west@ettus.com>
|
| |
|
|
|
|
|
|
| |
- Fixes issues with test_messages_test (it had inverted the pass/fail
condition)
- Improve Pylint scores in affected files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes warnings such as this during devtest:
/home/mbr0wn/src/uhddev/host/tests/devtest/uhd_test_base.py:112:
ResourceWarning: unclosed file <_io.TextIOWrapper
name='./results_x300_F457AD.log' mode='r' encoding='UTF-8'>
self.results = yaml.safe_load(open(self.results_file).read()) or {}
/path/to/uhd/host/tests/devtest/uhd_test_base.py:150:
ResourceWarning: unclosed file <_io.TextIOWrapper
name='./results_x300_F457AD.log' mode='w' encoding='UTF-8'>
yaml.dump(self.results, default_flow_style=False))
ok
|
|
|
|
| |
Use Python's `ruamel.yaml` module instead of `yaml`
|
|
|
|
|
|
|
| |
Co-Authored-By: Alex Williams <alex.williams@ni.com>
Co-Authored-By: Sugandha Gupta <sugandha.gupta@ettus.com>
Co-Authored-By: Brent Stapleton <brent.stapleton@ettus.com>
Co-Authored-By: Ciro Nishiguchi <ciro.nishiguchi@ni.com>
|
|
|
|
|
|
|
|
|
| |
This removes the following symbols:
- otw_type_t
- clock_config_t
- Any functions that use those symbols
- Non-standard args from examples (e.g., --total-time is deprecated in
favour of --duration)
|
|
|
|
|
|
|
|
|
|
|
| |
Usually, devtest is run via make (or ninja), and will use the correct
Python interpreter. When running directly on the command line, it is
important to pick the right Python interpreter so it will work with the
Python API.
Here, we change the default interpreter from Python 2 to 3, because
that's the more common version, and will be the only option for upcoming
UHD 4.0 anyway.
|
| |
|
|
|
|
| |
This will run tx_waveforms with a few settings.
|
|
|
|
|
| |
When running 'make test_***', it now also defaults to
RUNTIME_PYTHON_EXECUTABLE.
|
|
|
|
| |
Updating all SPDX license identifiers to include "-or-later"
|
|
|
|
|
|
|
|
|
| |
subprocess call in python3+ return stderr and stdout object is byte
object instead of text. This caused many issue with parsing the ouput in
devtest. These are not an issue in python2. This change will make
devtest more python3 compatible.
Signed-off-by: Trung.Tran<trung.tran@ettus.com>
|
|
|
|
|
|
|
| |
python3+ dropped has_key function on dictionary. In order to make it
compatible, we need to use 'in' keyword.
Signed-off-by: Trung.Tran<trung.tran@ettus.com>
|
|
|
|
| |
When adding E320 devtests, the `endif` clause had the wrong argument,
which resulted in a CMake warning.
|
| |
|
|
|
|
|
| |
If N300 or E320 is disabled, the appropriate devtests are no longer
registered.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also updates our coding style file.
Ancient CMake versions required upper-case commands. Later command
names became case-insensitive. Now the preferred style is lower-case.
Run the following shell code (with GNU compliant sed):
cmake --help-command-list | grep -v "cmake version" | while read c; do
echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
done > convert.sed \
&& git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' \
'*CMakeLists.txt' | xargs -0 gsed -i -f convert.sed && rm convert.sed
(Make sure the backslashes don't get mangled!)
|
|
|
|
|
|
| |
The E320 default master clock rate is 16MHz, therefore we need to
reduce the 2 channel receive rate to 8MHz in order to be able to meet
the requested rate.
|