circuitpython/tests
Scott Shawcroft 360475e266
Implement audiobusio and enhance PIO for it
This adds I2SOut and PDMIn support via PIO.

StateMachines can now:
 * read and read while writing
 * transfer in 1, 2 or 4 byte increments
 * init pins based on expected defaults automatically
 * be stopped and restarted
 * rxfifo can be cleared and rxstalls detected (good for tracking when
   the reading code isn't keeping up)

Fixes #4162
2021-02-23 15:50:00 -08:00
..
basics update async tests with less upython workaround and more cpython compatibility 2020-10-10 23:39:32 -07:00
bench Updated tests; removed try/catch for ucollections 2018-05-14 14:43:34 -04:00
circuitpython tests: Fixup tests for 3.x on Rosie 2017-11-16 10:56:20 -08:00
circuitpython-manual Implement audiobusio and enhance PIO for it 2021-02-23 15:50:00 -08:00
cmdline update expected result with new method 2020-09-07 07:11:23 -05:00
cpydiff WIP: after merge; before testing 2018-07-11 16:45:30 -04:00
extmod add ExtType, update doc, add a test 2020-12-07 15:40:02 -08:00
feature_check Fix up end of file and trailing whitespace. 2020-06-03 10:56:35 +01:00
float Fix up end of file and trailing whitespace. 2020-06-03 10:56:35 +01:00
import tests: Add .exp files for basics/parser and import/import_override. 2020-04-01 16:31:33 -05:00
inlineasm Fix up end of file and trailing whitespace. 2020-06-03 10:56:35 +01:00
io tests: Add tests using "file" argument in print and sys.print_exception. 2018-06-20 16:08:25 +10:00
jni Fix up end of file and trailing whitespace. 2020-06-03 10:56:35 +01:00
micropython py/emit: Combine yield value and yield-from emit funcs into one. 2018-05-23 00:22:35 +10:00
misc modstruct: Improve compliance with python3 2020-09-12 14:07:23 -05:00
net_hosted tests/net_hosted: Add test for socket connect() and poll() behaviour. 2017-11-23 10:45:12 +11:00
net_inet tests/net_inet: Update tls test to work with CPython and incl new site. 2017-10-26 12:29:24 +11:00
pyb README: Remove a statement that's not particularly true at the moment 2020-06-25 11:44:21 -05:00
pybnative py: Fix stack access in thumb native emitter. 2014-05-07 23:27:45 +01:00
stress tests: Move recursive tests to the tests/stress/ subdir. 2018-04-10 14:43:52 +10:00
thread Add license to some obvious files. 2020-07-06 19:16:25 +01:00
unicode py/objstr: Add check for valid UTF-8 when making a str from bytes. 2017-09-06 16:43:09 +10:00
unix Update tests for new autocomplete behavior 2019-05-06 14:19:07 -07:00
wipy README: Remove a statement that's not particularly true at the moment 2020-06-25 11:44:21 -05:00
pyboard.py tests: Point pyboard.py to tools/cpboard.py 2018-06-02 19:09:54 +02:00
README all: Remove trailing spaces, per coding conventions. 2017-07-19 13:12:10 +10:00
run-bench-tests tests/run-bench-tests: Update locations of executables, now in ports/. 2017-09-08 12:11:15 +10:00
run-tests also disable async_coroutine test in native emitter 2020-07-23 20:40:16 -07:00
run-tests-exp.py unix: Rename "_os" module to "uos" for consistency with baremetal ports. 2015-12-12 00:04:35 +02:00
run-tests-exp.sh run-tests-exp.sh: Typo fix in comment. 2015-02-21 03:22:33 +02:00
skip_if.py Add license to some obvious files. 2020-07-06 19:16:25 +01:00

This directory contains tests for various functionality areas of MicroPython.
To run all stable tests, run "run-tests" script in this directory.

Tests of capabilities not supported on all platforms should be written
to check for the capability being present. If it is not, the test
should merely output 'SKIP' followed by the line terminator, and call
sys.exit() to raise SystemExit, instead of attempting to test the
missing capability. The testing framework (run-tests in this
directory, test_main.c in qemu_arm) recognizes this as a skipped test.

There are a few features for which this mechanism cannot be used to
condition a test. The run-tests script uses small scripts in the
feature_check directory to check whether each such feature is present,
and skips the relevant tests if not.

When creating new tests, anything that relies on float support should go in the
float/ subdirectory.  Anything that relies on import x, where x is not a built-in
module, should go in the import/ subdirectory.