summaryrefslogtreecommitdiffstatshomepage
path: root/tests/unicode
Commit message (Collapse)AuthorAge
* all: Upgrade to ruff v0.9.6.Christian Clauss2025-02-25
| | | | Signed-off-by: Christian Clauss <cclauss@me.com>
* tests: Replace umodule with module everywhere.Jim Mussared2023-06-08
| | | | | | This work was funded through GitHub Sponsors. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
* tests/run-tests.py: Ensure correct cwd for mpy tests.Jim Mussared2023-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | Previously when using --via-mpy, the file was compiled to tests/<tmp>.mpy and then run using `micropython -m <tmp>` in the current cwd (usually tests/). This meant that an import in the test would be resolved relative to tests/. This is different to regular (non-via-mpy) tests, where we run (for example) `micropython basics/test.py` which means that an import would be resolved relative to basics/. Now --via-mpy matches the .py behavior. This is important because: a) It makes it so import tests do the right thing. b) There are directory names in tests/ that match built-in module names. Furthermore, it always ensures the cwd (for both micropython and cpython) is the test directory (e.g. basics/) rather than being left unset. This also makes it clearer inside the test that e.g. file access is relative to the Python file. Updated tests with file paths to match. This work was funded through GitHub Sponsors. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
* top: Update Python formatting to black "2023 stable style".Jim Mussared2023-02-02
| | | | | | See https://black.readthedocs.io/en/stable/the_black_code_style/index.html Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
* extmod/modure: Convert byte offsets to unicode indices when necessary.Jeff Epler2022-09-06
| | | | | | | | And add a test. Fixes issue #9202. Signed-off-by: Jeff Epler <jepler@gmail.com>
* tests/unicode: Add test for invalid utf-8 file contents.Jim Mussared2022-08-26
| | | | Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
* tests: Format all Python code with black, except tests in basics subdir.David Lechner2020-03-30
| | | | | | | | | | This adds the Python files in the tests/ directory to be formatted with ./tools/codeformat.py. The basics/ subdirectory is excluded for now so we aren't changing too much at once. In a few places `# fmt: off`/`# fmt: on` was used where the code had special formatting for readability or where the test was actually testing the specific formatting.
* py/objslice: Add support for indices() method on slice objects.Nicko van Someren2019-12-28
| | | | | | | | | | | | | | | | | Instances of the slice class are passed to __getitem__() on objects when the user indexes them with a slice. In practice the majority of the time (other than passing it on untouched) is to work out what the slice means in the context of an array dimension of a particular length. Since Python 2.3 there has been a method on the slice class, indices(), that takes a dimension length and returns the real start, stop and step, accounting for missing or negative values in the slice spec. This commit implements such a indices() method on the slice class. It is configurable at compile-time via MICROPY_PY_BUILTINS_SLICE_INDICES, disabled by default, enabled on unix, stm32 and esp32 ports. This commit also adds new tests for slice indices and for slicing unicode strings.
* py/unicode: Fix check for valid utf8 being stricter about contn chars.Damien George2018-11-26
|
* py/objstr: Add check for valid UTF-8 when making a str from bytes.tll2017-09-06
| | | | | | | | This patch adds a function utf8_check() to check for a valid UTF-8 encoded string, and calls it when constructing a str from raw bytes. The feature is selectable at compile time via MICROPY_PY_BUILTINS_STR_UNICODE_CHECK and is enabled if unicode is enabled. It costs about 110 bytes on Thumb-2, 150 bytes on Xtensa and 170 bytes on x86-64.
* tests: Improve coverage of array, range, dict, slice, exc, unicode.Damien George2016-10-17
|
* tests/unicode_subscr.py: Detailed test for subscripting unicode strings.Paul Sokolovsky2016-07-25
|
* tests: Move int+unicode test to unicode-specific test directory.Damien George2015-09-07
|
* py/lexer: Raise SyntaxError when unicode char point out of range.Damien George2015-09-07
|
* py/objstr: Make string formatting 8-bit clean.Damien George2015-08-29
|
* py: Support unicode (utf-8 encoded) identifiers in Python source.Damien George2015-06-09
| | | | Enabled simply by making the identifier lexing code 8-bit clean.
* tests: Add missing tests for builtins, and many other things.Damien George2015-04-04
|
* tests: Add some tests to improve coverage.Damien George2015-01-29
|
* Use mode/encoding kwargs in io and unicode testsstijn2014-10-21
| | | | | | mode argument is used to assert it works encoding argument is used to make sure CPython uses the correct encoding as it does not automatically use utf-8
* py: Add stream reading of n unicode chars; unicode support by default.Damien George2014-07-19
| | | | | | | | | | | | | With unicode enabled, this patch allows reading a fixed number of characters from text-mode streams; eg file.read(5) will read 5 unicode chars, which can made of more than 5 bytes. For an ASCII stream (ie no chars > 127) it only needs to do 1 read. If there are lots of non-ASCII chars in a stream, then it needs multiple reads of the underlying object. Adds a new test for this case. Enables unicode support by default on unix and stmhal ports.
* tests: Add basic test for unicode file i/o.Paul Sokolovsky2014-06-27
|
* tests: Test for explicit start/end args to str methods for unicode.Paul Sokolovsky2014-06-27
|
* tests: Add tests for unicode find()/rfind()/index().Paul Sokolovsky2014-06-27
|
* tests: Add test for unicode string iteration.Paul Sokolovsky2014-06-27
|
* tests: Add unicode test.Chris Angelico2014-06-27