micropython/tests/basics
Jim Mussared 692d36d779 py: Implement partial PEP-498 (f-string) support.
This implements (most of) the PEP-498 spec for f-strings and is based on
https://github.com/micropython/micropython/pull/4998 by @klardotsh.

It is implemented in the lexer as a syntax translation to `str.format`:
  f"{a}" --> "{}".format(a)

It also supports:
  f"{a=}" --> "a={}".format(a)

This is done by extracting the arguments into a temporary vstr buffer,
then after the string has been tokenized, the lexer input queue is saved
and the contents of the temporary vstr buffer are injected into the lexer
instead.

There are four main limitations:
- raw f-strings (`fr` or `rf` prefixes) are not supported and will raise
  `SyntaxError: raw f-strings are not supported`.

- literal concatenation of f-strings with adjacent strings will fail
    "{}" f"{a}" --> "{}{}".format(a)    (str.format will incorrectly use
                                         the braces from the non-f-string)
    f"{a}" f"{a}" --> "{}".format(a) "{}".format(a) (cannot concatenate)

- PEP-498 requires the full parser to understand the interpolated
  argument, however because this entirely runs in the lexer it cannot
  resolve nested braces in expressions like
    f"{'}'}"

- The !r, !s, and !a conversions are not supported.

Includes tests and cpydiffs.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-08-14 16:58:40 +10:00
..
0prelim.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
andor.py py: Fix 2 bugs in native emitter: jump_or_pop and stack settling. 2014-08-29 20:05:32 +01:00
annotate_var.py tests/basics: Add tests for variable annotations. 2020-06-16 23:18:01 +10:00
annotate_var.py.exp tests/basics: Add tests for variable annotations. 2020-06-16 23:18:01 +10:00
array1.py py/objarray: Implement more/less comparisons for array. 2021-05-13 22:16:14 +10:00
array_add.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
array_construct.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
array_construct2.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
array_construct_endian.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
array_intbig.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
array_micropython.py py/objarray: Prohibit comparison of mismatching types. 2021-05-13 22:16:14 +10:00
array_micropython.py.exp tests/basics: Add tests to improve coverage of binary.c. 2016-12-28 16:11:54 +11:00
assign1.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
assign_expr.py tests/basics: Add tests for assignment operator :=. 2020-06-16 22:06:30 +10:00
assign_expr.py.exp tests/basics: Add tests for assignment operator :=. 2020-06-16 22:06:30 +10:00
assign_expr_syntaxerror.py tests/basics: Add tests for assignment operator :=. 2020-06-16 22:06:30 +10:00
assign_expr_syntaxerror.py.exp tests/basics: Add tests for assignment operator :=. 2020-06-16 22:06:30 +10:00
async_await.py tests: Add 6 tests for async await/for/with. 2016-04-13 15:27:06 +01:00
async_await.py.exp tests: Add .exp files for async tests, so they can run with Python 3.4. 2016-04-13 15:56:15 +01:00
async_await2.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
async_await2.py.exp tests: Add .exp files for async tests, so they can run with Python 3.4. 2016-04-13 15:56:15 +01:00
async_def.py tests: Improve test coverage of py/compile.c. 2016-10-11 12:30:32 +11:00
async_def.py.exp tests: Improve test coverage of py/compile.c. 2016-10-11 12:30:32 +11:00
async_for.py py/compile: Don't await __aiter__ special method in async-for. 2020-07-25 00:58:18 +10:00
async_for.py.exp tests: Add .exp files for async tests, so they can run with Python 3.4. 2016-04-13 15:56:15 +01:00
async_for2.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
async_for2.py.exp py/compile: Don't await __aiter__ special method in async-for. 2020-07-25 00:58:18 +10:00
async_syntaxerror.py py/compile: Raise an error on async with/for outside an async function. 2021-05-30 10:38:48 +10:00
async_syntaxerror.py.exp py/compile: Raise an error on async with/for outside an async function. 2021-05-30 10:38:48 +10:00
async_with.py py/compile: Fix handling of unwinding BaseException in async with. 2019-02-26 23:52:10 +11:00
async_with.py.exp py/compile: Fix handling of unwinding BaseException in async with. 2019-02-26 23:52:10 +11:00
async_with2.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
async_with2.py.exp py/compile: Fix async-for/async-with to work with simpler exc on stack. 2016-09-28 11:52:13 +10:00
async_with_break.py py/compile: Handle return/break/continue correctly in async with. 2018-06-27 16:57:42 +10:00
async_with_break.py.exp py/compile: Handle return/break/continue correctly in async with. 2018-06-27 16:57:42 +10:00
async_with_return.py py/compile: Handle return/break/continue correctly in async with. 2018-06-27 16:57:42 +10:00
async_with_return.py.exp py/compile: Handle return/break/continue correctly in async with. 2018-06-27 16:57:42 +10:00
attrtuple1.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
bool1.py tests/basics: Add tests for equality between bool and int/float/complex. 2020-02-11 11:06:17 +11:00
boundmeth1.py tests/basics: Add test for assignment of attribute to bound method. 2017-01-20 13:17:22 +11:00
break.py py: Implement break and continue byte codes, and add tests. 2014-01-21 23:48:04 +00:00
builtin_abs.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_abs_intbig.py tests/basics: Add tests for edge cases of nan-box's 47-bit small int. 2018-04-05 00:59:49 +10:00
builtin_allany.py tests: Use range as iterable instead of list comprehension. 2015-03-02 17:55:55 +00:00
builtin_bin.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_bin_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_callable.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
builtin_chr.py tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01:00
builtin_compile.py py/runtime: Fix builtin compile() in "single" mode so it prints exprs. 2020-08-22 11:38:46 +10:00
builtin_delattr.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_dir.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
builtin_divmod.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_divmod_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_ellipsis.py py/objsingleton: Use mp_generic_unary_op for singleton objects. 2019-12-27 12:53:36 +11:00
builtin_enumerate.py tests/basics/builtin_enumerate: Add test for many pos args to enumerate. 2018-03-08 12:51:06 +11:00
builtin_eval.py tests: Automatically skip tests that require eval, exec or frozenset. 2018-02-14 16:46:44 +11:00
builtin_eval_buffer.py py/builtinevex: Support passing in a bytearray/buffer to eval/exec. 2020-02-28 12:45:36 +11:00
builtin_eval_error.py tests: Automatically skip tests that require eval, exec or frozenset. 2018-02-14 16:46:44 +11:00
builtin_exec.py tests: Automatically skip tests that require eval, exec or frozenset. 2018-02-14 16:46:44 +11:00
builtin_exec_buffer.py py/builtinevex: Support passing in a bytearray/buffer to eval/exec. 2020-02-28 12:45:36 +11:00
builtin_filter.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11:00
builtin_getattr.py py/modbuiltins: Fix getattr to work with class raising AttributeError. 2020-06-02 15:42:20 +10:00
builtin_hasattr.py py/modbuiltins: Make built-in hasattr work properly for user types. 2018-05-10 23:03:30 +10:00
builtin_hash.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_hash_gen.py py/objgenerator: Allow to hash generators and generator instances. 2017-07-07 11:47:38 +10:00
builtin_hash_intbig.py tests: Add some tests for bigint hash, float hash and float parsing. 2018-05-21 13:05:40 +10:00
builtin_help.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_help.py.exp tests: Add test for builtin help function. 2017-01-22 11:56:16 +11:00
builtin_hex.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_hex_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_id.py Fix unstable case in builtin_id.py test. 2014-02-04 00:50:22 +02:00
builtin_issubclass.py tests: Add more tests to improve coverage, mostly testing exceptions. 2015-08-21 12:02:09 +01:00
builtin_len1.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
builtin_locals.py tests/basics/builtin_locals: Add test for using locals() in class body. 2017-11-27 14:14:57 +11:00
builtin_map.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11:00
builtin_minmax.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_next_arg2.py py: Add optional support for 2-argument version of built-in next(). 2019-01-27 13:01:28 +11:00
builtin_oct.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_oct_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
builtin_ord.py tests: Add tests to improve coverage of objstr.c. 2015-09-03 23:06:18 +01:00
builtin_override.py tests: Add tests for overriding builtins.__import__. 2019-07-31 22:37:44 +10:00
builtin_pow.py tests: Split tests for 2- and 3-arg pow(). 2017-02-02 23:34:52 +03:00
builtin_pow3.py tests/basics/builtin_pow3: Add tests for edge cases of pow3. 2017-12-19 15:44:10 +11:00
builtin_pow3_intbig.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_print.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11:00
builtin_property.py py/objtype: Remove TODO comment about needing to check for property. 2018-05-25 10:59:40 +10:00
builtin_property_inherit.py py/objtype: Optimise instance get/set/del by skipping special accessors. 2018-06-08 12:12:08 +10:00
builtin_range.py tests/basics/builtin_range: Add test for corner case of range slicing. 2017-11-24 15:30:12 +11:00
builtin_range_attrs.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_range_binop.py py/objrange: Implement (in)equality comparison between range objects. 2018-02-14 23:17:06 +11:00
builtin_reversed.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_round.py modbuiltins: Implement round() to precision. 2015-07-19 21:49:44 +03:00
builtin_round_int.py py/modbuiltins: Add support for rounding integers. 2018-05-22 14:18:16 +10:00
builtin_round_intbig.py py/modbuiltins: Add support for rounding integers. 2018-05-22 14:18:16 +10:00
builtin_setattr.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11:00
builtin_slice.py tests/basics/builtin_slice: Add test for "slice" builtin name. 2016-10-24 13:35:39 +11:00
builtin_sorted.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_sum.py tests: Use range as iterable instead of list comprehension. 2015-03-02 17:55:55 +00:00
builtin_type.py py/objtype: Fix assertion failures in mp_obj_new_type by checking types. 2018-05-30 11:11:24 +10:00
builtin_zip.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11:00
bytearray1.py py/objarray: Implement more/less comparisons for array. 2021-05-13 22:16:14 +10:00
bytearray_add.py tests: Add a few tests for bool, bytearray, float to improve coverage. 2015-08-29 23:13:28 +01:00
bytearray_append.py py/objarray: Fix array.append so it doesn't extend if append fails. 2016-04-07 09:03:33 +01:00
bytearray_construct.py py/objarray: bytearray: Allow 2nd/3rd arg to constructor. 2018-09-11 15:10:10 +10:00
bytearray_construct_array.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytearray_construct_endian.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytearray_decode.py py/objarray: Add decode method to bytearray. 2019-05-21 14:24:04 +10:00
bytearray_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
bytearray_slice_assign.py py/objarray: Fix amount of free space in array when doing slice assign. 2019-08-15 23:02:04 +10:00
bytes.py py/objstr: Protect against creating bytes(n) with n negative. 2018-02-19 16:25:30 +11:00
bytes_add.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_add_array.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytes_add_bytearray.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_add_endian.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytes_compare.py sequence: Fix yet another case of improper sequence comparison. 2014-05-15 19:09:06 +03:00
bytes_compare2.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_compare3.py tests/bytes_compare: Rework test for bytes <-> str comparison. 2016-07-22 12:02:04 +03:00
bytes_compare3.py.exp tests/bytes_compare: Rework test for bytes <-> str comparison. 2016-07-22 12:02:04 +03:00
bytes_compare_array.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytes_compare_bytearray.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_construct.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_construct_array.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytes_construct_bytearray.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_construct_endian.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
bytes_construct_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
bytes_count.py tests: Make bytes/str.count() tests skippable. 2018-10-22 22:50:28 +11:00
bytes_find.py py/objstrunicode: str_index_to_ptr: Should handle bytes too. 2016-07-25 14:45:08 +03:00
bytes_format_modulo.py tests/basics: Automatically skip tests that use str/bytes modulo-format. 2019-10-29 22:22:37 +11:00
bytes_format_modulo.py.exp tests: Add tests for %-formatting of bytes. 2015-12-20 16:54:34 +02:00
bytes_gen.py tests: Fix uctypes tests to run on 64bit arch; enable more native tests. 2014-09-23 14:15:45 +00:00
bytes_large.py py: Never intern data of large string/bytes object; add relevant tests. 2015-01-13 16:21:23 +00:00
bytes_mult.py py: Fix mult by negative number of tuple, list, str, bytes. 2014-08-13 13:22:24 +01:00
bytes_partition.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
bytes_replace.py py: Make bytes objs work with more str methods; add tests. 2014-12-24 20:28:30 +00:00
bytes_split.py py: Make bytes objs work with more str methods; add tests. 2014-12-24 20:28:30 +00:00
bytes_strip.py py: Make bytes objs work with more str methods; add tests. 2014-12-24 20:28:30 +00:00
bytes_subscr.py tests: Add more tests to improve coverage, mostly testing exceptions. 2015-08-21 12:02:09 +01:00
class1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
class2.py tests: Add more tests to improve coverage, mostly testing exceptions. 2015-08-21 12:02:09 +01:00
class3.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
class_bases.py py/objtype: Add type.__bases__ attribute. 2019-10-18 15:20:56 +11:00
class_bind_self.py py: Rework mp_convert_member_lookup to properly handle built-ins. 2020-06-30 23:55:32 +10:00
class_binop.py py: Add dispatch for user defined ==, >, <=, >=. 2014-08-26 09:31:26 +01:00
class_call.py py: Support instance __call__ method. 2014-04-25 21:17:42 +03:00
class_contains.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
class_delattr_setattr.py py/objobject: Add object.__delattr__ function. 2019-12-21 00:14:22 +11:00
class_descriptor.py tests: Fix few test for proper "skipped" detection with qemu-arm's tinytest. 2017-12-12 23:45:48 +02:00
class_dict.py py/objtype: Handle __dict__ attribute when type has no locals. 2020-10-10 00:16:32 +11:00
class_emptybases.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
class_getattr.py tests/basics/class_getattr: Remove invalid test for __getattribute__. 2018-10-18 12:28:09 +11:00
class_inherit1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
class_inherit_mul.py tests: Add tests to improve coverage of py/objtype.c. 2017-12-14 12:25:30 +11:00
class_inplace_op.py tests/basics: Use str.format instead of % for formatting messages. 2019-10-29 22:22:37 +11:00
class_inplace_op2.py tests/basics: Add test for MICROPY_PY_ALL_INPLACE_SPECIAL_METHODS ops. 2020-09-18 18:40:42 +10:00
class_inplace_op2.py.exp tests/basics: Add test for MICROPY_PY_ALL_INPLACE_SPECIAL_METHODS ops. 2020-09-18 18:40:42 +10:00
class_instance_override.py tests: Add test for when instance member overrides class member. 2015-01-08 17:48:44 +00:00
class_item.py tests/basics: Improve user class coverage. 2016-11-22 15:49:02 +11:00
class_misc.py tests/basics: Use bytes not bytearray when checking user buffer proto. 2019-10-29 22:22:37 +11:00
class_new.py tests/class_new: Add another testcase for __new__/__init__ interaction. 2017-09-01 00:43:52 +03:00
class_notimpl.py py/objsingleton: Use mp_generic_unary_op for singleton objects. 2019-12-27 12:53:36 +11:00
class_number.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
class_ordereddict.py py/objtype: Support passing in an OrderedDict to type() as the locals. 2020-06-24 12:05:40 +10:00
class_ordereddict.py.exp py/objtype: Support passing in an OrderedDict to type() as the locals. 2020-06-24 12:05:40 +10:00
class_reverse_op.py tests/basics: Use str.format instead of % for formatting messages. 2019-10-29 22:22:37 +11:00
class_staticclassmethod.py py/objtype: Support full object model for get/set/delitem special meths. 2018-09-28 23:22:34 +10:00
class_store.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
class_store_class.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
class_str.py Implement support for __str__ and __repr__ special methods in classes. 2014-03-16 15:18:22 +02:00
class_super.py py/objtype: Fix assertion failures in super_attr by checking type. 2018-05-30 11:14:07 +10:00
class_super_aslocal.py tests: Move super-as-local test from cpydiff to basic tests. 2017-05-06 11:01:57 +10:00
class_super_closure.py tests/basics: Add test for super() when self is closed over. 2017-03-27 11:29:11 +11:00
class_super_multinherit.py tests: Add tests to improve coverage of py/objtype.c. 2017-12-14 12:25:30 +11:00
class_super_object.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
class_use_other.py py: Use a wrapper to explicitly check self argument of builtin methods. 2015-06-20 16:39:39 +01:00
closure1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
closure2.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
closure_defargs.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
closure_manyvars.py tests: Add tests for SyntaxError, TypeError, and other missing things. 2015-03-25 23:10:09 +00:00
closure_namedarg.py py: Fix naming of function arguments when function is a closure. 2015-05-06 13:55:33 +01:00
compare_multi.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
comprehension1.py tests/comprehension1, containment: Split set tests to separate files. 2017-02-14 22:31:08 +03:00
containment.py tests/run-tests: Use -BS flags when running CPython. 2020-09-25 12:27:23 +10:00
continue.py py: Implement break and continue byte codes, and add tests. 2014-01-21 23:48:04 +00:00
decorator.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
del_attr.py py/objtype: Check and prevent delete/store on a fixed locals map. 2018-02-07 15:44:29 +11:00
del_deref.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
del_global.py tests: Improve test coverage of py/compile.c. 2016-10-11 12:30:32 +11:00
del_local.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
del_name.py tests: Add some tests to improve coverage. 2015-01-29 00:44:11 +00:00
del_subscr.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
deque1.py py/objdeque: Protect against negative maxlen in deque constructor. 2018-02-21 23:34:17 +11:00
deque2.py tests/basics/deque*: Tests for ucollections.deque. 2018-02-21 22:58:14 +11:00
deque2.py.exp tests/basics/deque*: Tests for ucollections.deque. 2018-02-21 22:58:14 +11:00
dict1.py tests/basics: Add tests for equality between bool and int/float/complex. 2020-02-11 11:06:17 +11:00
dict2.py tests: Add tests for op special meths, ubinascii, complex. 2015-03-02 12:47:44 +00:00
dict_clear.py tests: Fix few tests which depend on order of elements in dict. 2014-04-06 21:31:42 +03:00
dict_construct.py py: Implement full behaviour of dict.update(), and dict(). 2014-06-03 12:53:44 +01:00
dict_copy.py tests: Reduce large object allocations so tests can run with small heap. 2016-03-06 05:59:46 +02:00
dict_del.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
dict_fixed.py py/objdict: Disallow possible modifications to fixed dicts. 2018-02-18 21:51:04 -06:00
dict_fixed.py.exp py/objdict: Disallow possible modifications to fixed dicts. 2018-02-18 21:51:04 -06:00
dict_from_iter.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
dict_fromkeys.py tests/dict_fromkeys: Split out skippable part. 2017-03-09 08:31:35 +01:00
dict_fromkeys2.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
dict_get.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
dict_intern.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
dict_iterator.py tests: Fix few tests which depend on order of elements in dict. 2014-04-06 21:31:42 +03:00
dict_pop.py tests/basics/dict_pop.py: Remove extra comma in call and fix grammar. 2020-03-28 23:41:08 +11:00
dict_popitem.py tests: Fix few tests which depend on order of elements in dict. 2014-04-06 21:31:42 +03:00
dict_setdefault.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
dict_specialmeth.py tests: Add tests for op special meths, ubinascii, complex. 2015-03-02 12:47:44 +00:00
dict_update.py py: Implement full behaviour of dict.update(), and dict(). 2014-06-03 12:53:44 +01:00
dict_views.py tests: Improve coverage of array, range, dict, slice, exc, unicode. 2016-10-17 11:43:47 +11:00
equal.py py: Remove useless implementations of NOT_EQUAL in binary_op's. 2014-04-12 00:20:39 +01:00
equal_class.py py: Implement fallback for equality check for all types. 2015-01-11 15:13:18 +00:00
errno1.py py/objexcept: Pretty print OSError also when it has 2 arguments. 2021-07-01 13:23:54 +10:00
errno1.py.exp py/objexcept: Pretty print OSError also when it has 2 arguments. 2021-07-01 13:23:54 +10:00
except_match_tuple.py tests: Add test for exception matching of a tuple of exceptions. 2014-09-25 15:49:26 +01:00
exception1.py py/objexcept: Support errno attribute on OSError exceptions. 2021-04-23 22:03:46 +10:00
exception_chain.py tests: Add test for exception-chaining raise syntax. 2015-09-01 10:39:11 +03:00
exception_chain.py.exp py: Remove dependency on printf/fwrite in mp_plat_print. 2015-10-15 00:05:55 +01:00
exceptpoly.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
exceptpoly2.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
floordivide.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
floordivide_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
for1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
for2.py py: Fix bug in optimised for .. range. 2014-03-31 18:02:22 +01:00
for3.py py: Fix optimised for-loop compiler so it follows proper semantics. 2014-12-12 17:19:56 +00:00
for_break.py tests: Add another test for break-from-for-loop. 2014-05-31 16:56:15 +01:00
for_else.py tests/basics: Add tests for for-else statement. 2017-06-22 14:02:14 +10:00
for_range.py tests/basics: Add tests for raising ValueError when range() gets 0 step. 2017-04-05 10:52:29 +10:00
for_return.py py: Fix stack underflow with optimised for loop. 2014-05-31 17:59:11 +01:00
frozenset1.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
frozenset_add.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
frozenset_binop.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
frozenset_copy.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
frozenset_difference.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
frozenset_set.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
fun1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
fun2.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
fun3.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
fun_annotations.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
fun_calldblstar.py py/runtime: Check that keys in dicts passed as ** args are strings. 2018-03-30 11:13:32 +11:00
fun_calldblstar2.py tests: Automatically skip tests that require eval, exec or frozenset. 2018-02-14 16:46:44 +11:00
fun_calldblstar3.py tests/basics: Improve runtime.c test coverage. 2017-01-17 16:21:17 +11:00
fun_callstar.py tests/basics: Improve runtime.c test coverage. 2017-01-17 16:21:17 +11:00
fun_callstardblstar.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
fun_defargs.py py: Fix compiler to handle lambdas used as default arguments. 2015-12-12 13:42:51 +00:00
fun_defargs2.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
fun_error.py tests: Rewrite some tests so they can run without needing eval/exec. 2018-02-14 16:50:20 +11:00
fun_error2.py tests: Rewrite some tests so they can run without needing eval/exec. 2018-02-14 16:50:20 +11:00
fun_globals.py py/objfun: Support fun.__globals__ attribute. 2021-01-29 23:57:10 +11:00
fun_kwargs.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
fun_kwonly.py py: Fix compiler to handle lambdas used as default arguments. 2015-12-12 13:42:51 +00:00
fun_kwonlydef.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
fun_kwvarargs.py tests: Allow tests to pass against CPython 3.5. 2015-10-02 13:01:47 +01:00
fun_largestate.py tests: Add some tests to improve coverage. 2015-01-29 14:56:09 +00:00
fun_name.py tests/basics: Add test for getting name of func with closed over locals. 2019-10-01 12:26:22 +10:00
fun_str.py tests: Add tests for SyntaxError, TypeError, and other missing things. 2015-03-25 23:10:09 +00:00
fun_varargs.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
gc1.py tests/basics/gc1: Add test which triggers GC threshold. 2018-02-27 22:39:17 +11:00
gen_yield_from.py py/objgenerator: Implement PEP479, StopIteration convs to RuntimeError. 2018-09-20 15:36:59 +10:00
gen_yield_from_close.py py/objgenerator: Implement PEP479, StopIteration convs to RuntimeError. 2018-09-20 15:36:59 +10:00
gen_yield_from_ducktype.py vm: Properly handle StopIteration raised in user instance iterator. 2015-05-11 23:57:42 +01:00
gen_yield_from_exc.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
gen_yield_from_executing.py py/objgenerator: Protect against reentering a generator. 2018-05-22 16:54:03 +10:00
gen_yield_from_iter.py py: iternext() may not return MP_OBJ_NULL, only MP_OBJ_STOP_ITERATION. 2015-05-10 00:41:49 +03:00
gen_yield_from_pending.py tests: Add tests for generator throw and yield-from with exc handlers. 2020-01-27 13:16:06 +11:00
gen_yield_from_send.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
gen_yield_from_stopped.py py: Support single argument to optimised MP_OBJ_STOP_ITERATION. 2021-07-15 00:12:41 +10:00
gen_yield_from_throw.py tests/basics: Add test for throw into yield-from with normal return. 2019-10-04 23:27:48 +10:00
gen_yield_from_throw2.py py/vm: Fix case of throwing GeneratorExit type into yield-from. 2018-09-28 11:39:35 +10:00
gen_yield_from_throw3.py py/runtime: Be sure that non-intercepted thrown object is an exception. 2018-03-30 12:43:38 +11:00
generator1.py tests/basics: Improve test coverage for generators. 2016-12-20 16:19:56 +11:00
generator2.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
generator_args.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
generator_close.py py/objgenerator: Implement PEP479, StopIteration convs to RuntimeError. 2018-09-20 15:36:59 +10:00
generator_closure.py objclosure: Fix printing of generator closures. 2014-10-16 00:14:01 +03:00
generator_exc.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
generator_name.py py/objgenerator: Implement __name__ with normal fun attr accessor code. 2018-07-10 16:33:57 +10:00
generator_pend_throw.py py/objgenerator: Allow pend_throw to an unstarted generator. 2019-11-04 15:51:16 +11:00
generator_pend_throw.py.exp py/objgenerator: Allow pend_throw to an unstarted generator. 2019-11-04 15:51:16 +11:00
generator_pep479.py py/runtime: Fix PEP479 behaviour throwing StopIteration into yield from. 2019-10-04 23:27:00 +10:00
generator_pep479.py.exp py/runtime: Fix PEP479 behaviour throwing StopIteration into yield from. 2019-10-04 23:27:00 +10:00
generator_return.py py/objgenerator: Remove TODO about returning gen being called again. 2018-09-27 15:18:24 +10:00
generator_send.py gen.send(): Throw StopIteration. Also, explicitly shutdown finished gen. 2014-01-27 01:07:58 +02:00
generator_throw.py py/objgenerator: Fix handling of None passed as 2nd arg to throw(). 2019-05-09 13:40:28 +10:00
generator_throw_nested.py tests: Add tests for generator throw and yield-from with exc handlers. 2020-01-27 13:16:06 +11:00
getattr.py py/objtype: Remove comment about catching exc from user __getattr__. 2018-10-18 12:15:16 +11:00
getitem.py tests: Add test where __getitem__ raises IndexError to stop iteration. 2015-08-30 11:49:59 +01:00
globals_del.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
ifcond.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
ifexpr.py tests/basics: Add tests for if-expressions. 2016-11-26 16:15:31 +11:00
int1.py tests/basics: Add tests for parsing of ints with base 36. 2016-12-28 12:08:46 +11:00
int2.py tests: Add tests for SyntaxError, TypeError, and other missing things. 2015-03-25 23:10:09 +00:00
int_big1.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
int_big_add.py tests/basics: Add tests for edge cases of nan-box's 47-bit small int. 2018-04-05 00:59:49 +10:00
int_big_and.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_and2.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_and3.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_cmp.py tests: Add tests for boundmeth; and bignum cmp, unary, float, error. 2015-03-03 16:45:39 +00:00
int_big_div.py py/mpz: Fix overflow of borrow in mpn_div. 2021-02-08 11:50:05 +11:00
int_big_error.py tests/basics/int_big_error.py: Use bytearray to test for int overflow. 2018-08-17 15:43:47 +10:00
int_big_lshift.py tests: Add further tests for mpz code. 2015-10-01 18:49:37 +01:00
int_big_mod.py py/mpz: Do Python style division/modulo within bignum divmod routine. 2016-05-08 22:21:21 +01:00
int_big_mul.py tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01:00
int_big_or.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_or2.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_or3.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_pow.py tests: Add further tests for mpz code. 2015-10-01 18:49:37 +01:00
int_big_rshift.py tests/basics: Modify int-big tests to prevent constant folding. 2018-04-04 13:57:22 +10:00
int_big_unary.py tests: Add tests for boundmeth; and bignum cmp, unary, float, error. 2015-03-03 16:45:39 +00:00
int_big_xor.py tests/basics: Modify int-big tests to prevent constant folding. 2018-04-04 13:57:22 +10:00
int_big_xor2.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_xor3.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
int_big_zeroone.py py: Fix comparison of minus-zero long int. 2015-01-27 17:47:38 +00:00
int_bytes.py py/objint: In to_bytes(), allow length arg to be any int and check sign. 2017-06-15 14:21:02 +10:00
int_bytes_intbig.py py/objint: Support "big" byte-order in int.to_bytes(). 2017-06-15 13:56:21 +10:00
int_constfolding.py py/parse: Support constant folding of power operator for integers. 2020-05-03 16:23:19 +10:00
int_constfolding_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
int_divmod.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
int_divmod_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
int_divzero.py py: Catch all cases of integer (big and small) division by zero. 2015-10-01 22:48:48 +01:00
int_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
int_small.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
io_buffered_writer.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_buffered_writer.py.exp tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_bytesio_cow.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_bytesio_ext.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_bytesio_ext2.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_bytesio_ext2.py.exp tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_iobase.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_stringio1.py py/objstringio: Expose tell() on StringIO and BytesIO objects. 2020-03-11 14:43:03 +11:00
io_stringio_with.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_write_ext.py tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
io_write_ext.py.exp tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10:00
is_isnot.py tests/basics: Split out literal tests that raise SyntaxWarning on CPy. 2021-05-30 13:41:37 +10:00
is_isnot_literal.py tests/basics: Split out literal tests that raise SyntaxWarning on CPy. 2021-05-30 13:41:37 +10:00
is_isnot_literal.py.exp tests/basics: Split out literal tests that raise SyntaxWarning on CPy. 2021-05-30 13:41:37 +10:00
iter0.py tests/basics: Improve runtime.c test coverage. 2017-01-17 16:21:17 +11:00
iter1.py tests/basics/iter1.py: Add more tests for walking a user-defined iter. 2018-03-30 14:23:13 +11:00
iter2.py py: Replace mp_const_stop_iteration object with MP_OBJ_NULL. 2014-03-26 19:27:58 +00:00
iter_of_iter.py tests/basic/: Make various tests skippable. 2017-02-15 18:11:16 +03:00
lambda1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
lambda_defargs.py py: Implement default and star args for lambdas. 2015-11-17 14:00:14 +00:00
lexer.py tests: Automatically skip tests that require eval, exec or frozenset. 2018-02-14 16:46:44 +11:00
list1.py tests/basics: Split out specific slice tests to separate files. 2019-10-29 22:22:37 +11:00
list_clear.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
list_compare.py py/objlist: Properly implement comparison with incompatible types. 2017-09-07 00:10:10 +03:00
list_copy.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
list_count.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
list_extend.py py/objlist: Make list += accept all arguments and add test. 2015-08-02 20:53:54 +01:00
list_index.py tests: Add tests for SyntaxError, TypeError, and other missing things. 2015-03-25 23:10:09 +00:00
list_insert.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
list_mult.py tests/basics: Add more list tests to improve coverage testing. 2016-08-15 10:46:35 +10:00
list_pop.py tests/basics: Add more list tests to improve coverage testing. 2016-08-15 10:46:35 +10:00
list_remove.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
list_reverse.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
list_slice.py tests/basics: Split out specific slice tests to separate files. 2019-10-29 22:22:37 +11:00
list_slice_3arg.py tests/basics/list_slice_3arg: Add more tests for negative slicing. 2017-05-18 17:32:42 +10:00
list_slice_assign.py all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +10:00
list_slice_assign_grow.py tests/basics: Add tests for list and bytearray growing using themselves. 2017-04-02 17:31:32 +10:00
list_sort.py tests: Reduce large object allocations so tests can run with small heap. 2016-03-06 05:59:46 +02:00
list_sum.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
logic_constfolding.py tests/basics: Add test for logical constant folding. 2016-11-15 16:48:49 +11:00
memoryerror.py tests/basics/memoryerror: Add test for out-of-memory using realloc. 2017-12-20 16:58:27 +11:00
memoryerror.py.exp tests/basics/memoryerror: Add test for out-of-memory using realloc. 2017-12-20 16:58:27 +11:00
memoryview1.py tests/basics: Split out memoryview slice-assign tests to separate file. 2020-07-21 01:05:59 +10:00
memoryview2.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
memoryview_gc.py py/objarray: Fix constructing a memoryview from a memoryview. 2021-05-18 10:18:56 +10:00
memoryview_intbig.py tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
memoryview_itemsize.py tests/basics/memoryview_itemsize: Make portable to 32- and 64-bit archs. 2019-12-13 15:59:08 +11:00
memoryview_slice_assign.py py/obj.h: Fix mp_seq_replace_slice_no_grow to use memmove not memcpy. 2020-07-21 01:05:59 +10:00
module1.py tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01:00
module2.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
module2.py.exp tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01:00
namedtuple1.py tests/basics: Add test for equality between tuple and namedtuple. 2020-02-11 11:06:17 +11:00
namedtuple_asdict.py tests/basics/namedtuple*: Import ucollections first. 2018-06-27 14:58:14 +10:00
object1.py tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01:00
object_dict.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
object_new.py tests/object_new: Better messages, check user __new__() method. 2017-08-30 21:29:23 +03:00
op_error.py tests/basics: Split out literal tests that raise SyntaxWarning on CPy. 2021-05-30 13:41:37 +10:00
op_error_bytearray.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
op_error_intbig.py tests: Rewrite some tests so they can run without needing eval/exec. 2018-02-14 16:50:20 +11:00
op_error_literal.py tests/basics: Split out literal tests that raise SyntaxWarning on CPy. 2021-05-30 13:41:37 +10:00
op_error_literal.py.exp tests/basics: Split out literal tests that raise SyntaxWarning on CPy. 2021-05-30 13:41:37 +10:00
op_error_memoryview.py tests: Rewrite some tests so they can run without needing eval/exec. 2018-02-14 16:50:20 +11:00
op_precedence.py tests: Make tests work on targets without float support. 2018-08-04 15:14:23 +10:00
ordereddict1.py py/objdict: Fix popitem for ordered dicts. 2020-04-27 23:53:17 +10:00
ordereddict_eq.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
ordereddict_eq.py.exp tests: Add testcase for OrderedDict equality. 2016-06-12 17:37:19 +03:00
parser.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
parser.py.exp tests: Add .exp files for basics/parser and import/import_override. 2019-12-13 14:20:47 +11:00
python34.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
python34.py.exp tests: Modify tests that print repr of an exception with 1 arg. 2018-08-17 15:46:04 +10:00
python36.py py/lexer: Add support for underscores in numeric literals. 2018-06-12 12:17:43 +10:00
python36.py.exp py/lexer: Add support for underscores in numeric literals. 2018-06-12 12:17:43 +10:00
return1.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
scope.py tests/basics: Add further tests for nonlocal scoping and closures. 2016-09-30 14:20:55 +10:00
scope_implicit.py py/compile: Fix case of eager implicit conversion of local to nonlocal. 2018-10-28 00:33:08 +11:00
self_type_check.py py: Use a wrapper to explicitly check self argument of builtin methods. 2015-06-20 16:39:39 +01:00
seq_unpack.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
set_add.py tests/basics: Add tests for equality between bool and int/float/complex. 2020-02-11 11:06:17 +11:00
set_basic.py tests/basics: Add tests for equality between bool and int/float/complex. 2020-02-11 11:06:17 +11:00
set_binop.py tests/basics: Add more set tests to improve coverage of py/objset.c. 2017-12-19 13:59:54 +11:00
set_clear.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
set_comprehension.py tests/comprehension1, containment: Split set tests to separate files. 2017-02-14 22:31:08 +03:00
set_containment.py tests/comprehension1, containment: Split set tests to separate files. 2017-02-14 22:31:08 +03:00
set_copy.py Modify set tests to print sorted sets directly 2014-04-07 05:00:03 +01:00
set_difference.py tests/basics: Add test for set.difference_update with arg being itself. 2016-09-28 11:10:27 +10:00
set_discard.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
set_intersection.py Modify set tests to print sorted sets directly 2014-04-07 05:00:03 +01:00
set_isdisjoint.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
set_isfooset.py tests/basics: Add more set tests to improve coverage of py/objset.c. 2017-12-19 13:59:54 +11:00
set_iter.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
set_iter_of_iter.py tests/basic/: Make various tests skippable. 2017-02-15 18:11:16 +03:00
set_pop.py tests/basics/set_pop.py: Sort set before printing for consistent output. 2018-08-17 15:42:51 +10:00
set_remove.py py/objset: Include the failed key in a KeyError raised from set.remove. 2017-10-03 18:03:06 +11:00
set_specialmeth.py tests: Add tests for op special meths, ubinascii, complex. 2015-03-02 12:47:44 +00:00
set_symmetric_difference.py Modify set tests to print sorted sets directly 2014-04-07 05:00:03 +01:00
set_type.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
set_union.py tests: Fix few tests which depend on order of elements in set. 2014-04-07 02:54:16 +03:00
set_unop.py tests: Add more tests to improve coverage, mostly testing exceptions. 2015-08-21 12:02:09 +01:00
set_update.py Modify set tests to print sorted sets directly 2014-04-07 05:00:03 +01:00
slice_attrs.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
slice_indices.py py/objslice: Add support for indices() method on slice objects. 2019-12-28 23:55:15 +11:00
slice_intbig.py tests/basic: Split tests into working with small ints and not working. 2017-03-04 00:13:27 +03:00
slots_bool_len.py py: Improve __bool__ and __len__ dispatch; add slots for them. 2014-01-30 10:05:33 +00:00
special_comparisons.py py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
special_comparisons2.py py: Support non-boolean results for equality and inequality tests. 2020-01-30 14:53:07 +11:00
special_methods.py tests/basics: Enable == and != special-method tests now that they work. 2020-09-18 18:40:42 +10:00
special_methods2.py tests/basics: Enable == and != special-method tests now that they work. 2020-09-18 18:40:42 +10:00
special_methods2.py.exp tests/basics: Add test for matmul operator. 2019-09-26 15:15:34 +10:00
stopiteration.py py: Support single argument to optimised MP_OBJ_STOP_ITERATION. 2021-07-15 00:12:41 +10:00
string1.py tests: Add tests to improve coverage of objstr.c. 2015-09-03 23:06:18 +01:00
string_center.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
string_compare.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
string_count.py tests: Make bytes/str.count() tests skippable. 2018-10-22 22:50:28 +11:00
string_cr_conversion.py py: Convert CR to LF and CR LF to LF in lexer. 2015-01-30 00:27:46 +00:00
string_crlf_conversion.py py: Convert CR to LF and CR LF to LF in lexer. 2015-01-30 00:27:46 +00:00
string_endswith.py py/objstr: startswith, endswith: Check arg to be a string. 2017-08-29 00:06:21 +03:00
string_endswith_upy.py py/objstr: startswith, endswith: Check arg to be a string. 2017-08-29 00:06:21 +03:00
string_endswith_upy.py.exp py/objstr: startswith, endswith: Check arg to be a string. 2017-08-29 00:06:21 +03:00
string_escape.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
string_find.py py/objstr: In find/rfind, don't crash when end < start. 2018-04-05 16:14:17 +10:00
string_format.py tests: Add boolean-as-integer formatting tests for fixed regression. 2020-01-24 10:57:17 +11:00
string_format2.py tests/basics/string_format2: Adjust comment now that tests succeed. 2017-03-15 17:25:46 +11:00
string_format_error.py tests: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00:00
string_format_modulo.py tests: Add boolean-as-integer formatting tests for fixed regression. 2020-01-24 10:57:17 +11:00
string_format_modulo_int.py tests/basics: Automatically skip tests that use str/bytes modulo-format. 2019-10-29 22:22:37 +11:00
string_fstring.py py: Implement partial PEP-498 (f-string) support. 2021-08-14 16:58:40 +10:00
string_index.py py: Implement str.[r]index() and add tests for them. 2014-04-08 11:51:41 -07:00
string_istest.py add methods isspace(), isalpha(), isdigit(), isupper() and islower() to str 2014-05-31 07:30:57 +01:00
string_join.py tests/basics/string_join.py: Add test case where argument is not iterable. 2017-03-07 16:48:16 +11:00
string_large.py py: Never intern data of large string/bytes object; add relevant tests. 2015-01-13 16:21:23 +00:00
string_mult.py py: Fix mult by negative number of tuple, list, str, bytes. 2014-08-13 13:22:24 +01:00
string_partition.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
string_replace.py tests: Add more tests to improve coverage, mostly testing exceptions. 2015-08-21 12:02:09 +01:00
string_repr.py tests/basics: Use str.format instead of % for formatting messages. 2019-10-29 22:22:37 +11:00
string_rfind.py py/objstr: In find/rfind, don't crash when end < start. 2018-04-05 16:14:17 +10:00
string_rindex.py py: Implement str.[r]index() and add tests for them. 2014-04-08 11:51:41 -07:00
string_rpartition.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
string_rsplit.py tests/basics/string_rsplit: Add tests for negative "maxsplit" argument. 2017-06-02 13:08:18 +10:00
string_slice.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
string_split.py objstr: split(None): Fix whitespace properly. 2015-04-12 00:17:57 +03:00
string_splitlines.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
string_startswith.py py/objstr: startswith, endswith: Check arg to be a string. 2017-08-29 00:06:21 +03:00
string_startswith_upy.py py/objstr: startswith, endswith: Check arg to be a string. 2017-08-29 00:06:21 +03:00
string_startswith_upy.py.exp py/objstr: startswith, endswith: Check arg to be a string. 2017-08-29 00:06:21 +03:00
string_strip.py py/objstr: strip: Don't strip "\0" by default. 2017-09-19 21:21:12 +03:00
string_upperlow.py objstr: Implement .lower() and .upper(). 2014-05-10 19:49:07 +03:00
struct1.py py/modstruct: Check and prevent buffer-write overflow in struct packing. 2017-09-01 11:11:09 +10:00
struct1_intbig.py py/mpz: Do sign extension in mpz_as_bytes for negative values. 2020-11-11 22:18:24 +11:00
struct2.py py/modstruct: Check and prevent buffer-write overflow in struct packing. 2017-09-01 11:11:09 +10:00
struct_endian.py py/modstruct: Fix struct.pack_into with unaligned offset of native type. 2019-09-02 13:14:16 +10:00
struct_micropython.py py/modstruct: In struct.pack, stop converting if there are no args left. 2017-09-01 10:10:51 +10:00
struct_micropython.py.exp py/modstruct: In struct.pack, stop converting if there are no args left. 2017-09-01 10:10:51 +10:00
subclass_classmethod.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
subclass_native1.py tests: Add more tests to improve coverage, mostly testing exceptions. 2015-08-21 12:02:09 +01:00
subclass_native2_list.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
subclass_native2_tuple.py tests/basics: Expand test cases for equality of subclasses. 2020-01-30 14:53:07 +11:00
subclass_native3.py py/objexcept: Make mp_obj_exception_get_value support subclassed excs. 2021-07-15 00:12:41 +10:00
subclass_native4.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
subclass_native5.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
subclass_native_buffer.py tests/basics: Use bytes not bytearray when checking user buffer proto. 2019-10-29 22:22:37 +11:00
subclass_native_call.py tests: Skip tests needing machine module if (u)machine doesn't exist. 2019-04-28 22:12:17 +10:00
subclass_native_call.py.exp tests/basics: Add test for calling a subclass of a native class. 2018-02-24 23:13:42 +11:00
subclass_native_cmp.py tests/basics: Add test for tuple compare with class derived from tuple. 2020-02-20 10:48:03 +11:00
subclass_native_containment.py tests/basics: Add test for containment of a subclass of a native type. 2017-11-24 14:48:41 +11:00
subclass_native_init.py tests/basics: Add test for overriding a native base-class's init method. 2017-12-12 16:47:38 +11:00
subclass_native_iter.py tests/basics: Add test for subclassing an iterable native type. 2018-04-04 15:26:18 +10:00
subclass_native_specmeth.py objtype: Implement ->getiter() method for instances. 2014-05-10 21:26:08 +03:00
subclass_native_str.py tests: Move CPy diff test to real test now that subclass equality works. 2020-02-04 18:25:34 +11:00
syntaxerror.py tests/basics: Move test for "return" outside function to own file. 2020-02-06 00:42:34 +11:00
syntaxerror_return.py tests/basics: Move test for "return" outside function to own file. 2020-02-06 00:42:34 +11:00
sys1.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
sys_exit.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
sys_getsizeof.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
true_value.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
try1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
try2.py tests: Add tests to improve coverage of runtime.c. 2016-12-21 15:44:41 +11:00
try3.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
try4.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
try_as_var.py tests: Modify tests that print repr of an exception with 1 arg. 2018-08-17 15:46:04 +10:00
try_continue.py py/vm: Fix popping of exception block in UNWIND_JUMP opcode. 2016-02-01 16:07:21 +00:00
try_else.py tests/basics: Add tests for try-except-else and try-except-else-finally. 2019-02-21 16:22:41 +11:00
try_else_finally.py tests/basics: Add tests for try-except-else and try-except-else-finally. 2019-02-21 16:22:41 +11:00
try_error.py tests: Add tests for SyntaxError, TypeError, and other missing things. 2015-03-25 23:10:09 +00:00
try_except_break.py py/bc: Fix size calculation of UNWIND_JUMP opcode in mp_opcode_format. 2019-09-02 13:30:16 +10:00
try_except_break.py.exp py/bc: Fix size calculation of UNWIND_JUMP opcode in mp_opcode_format. 2019-09-02 13:30:16 +10:00
try_finally1.py py/emitnative: Fix try-finally in outer scope, so finally is cancelled. 2018-09-11 15:33:25 +10:00
try_finally2.py tests/basics: Add test case for overflowing Py stack in try-finally. 2016-09-27 12:46:50 +10:00
try_finally_break.py py: Fix VM crash with unwinding jump out of a finally block. 2019-03-05 16:05:05 +11:00
try_finally_break2.py py/vm: Fix handling of unwind jump out of active finally. 2019-10-04 23:01:29 +10:00
try_finally_continue.py py/vm: Fix handling of unwind jump out of active finally. 2019-10-04 23:01:29 +10:00
try_finally_continue.py.exp py/vm: Fix handling of unwind jump out of active finally. 2019-10-04 23:01:29 +10:00
try_finally_loops.py tests/basics: Add more tests for unwind jumps from within a try-finally. 2017-05-25 20:48:16 +10:00
try_finally_return.py py: Fix with+for+return bug by popping for-iter when unwinding exc stack. 2015-10-15 17:48:28 +01:00
try_finally_return2.py py: Handle case of return within the finally block of try-finally. 2015-12-24 12:47:39 +00:00
try_finally_return3.py py/vm: Fix handling of finally-return with complex nested finallys. 2018-09-03 13:08:16 +10:00
try_finally_return4.py tests/basics: Add more tests for return within try-finally. 2018-09-04 14:37:07 +10:00
try_finally_return5.py py/vm: Fix handling of unwind jump out of active finally. 2019-10-04 23:01:29 +10:00
try_reraise.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
try_reraise2.py various: Spelling fixes 2017-05-29 11:36:05 +03:00
try_return.py py: Fix VM crash with unwinding jump out of a finally block. 2019-03-05 16:05:05 +11:00
tuple1.py tests/basics: Split out specific slice tests to separate files. 2019-10-29 22:22:37 +11:00
tuple_compare.py py/objtuple: Properly implement comparison with incompatible types. 2017-09-06 00:23:41 +03:00
tuple_count.py Factor out mp_seq_count_obj() and implement tuple.count(). 2014-02-10 07:13:32 +02:00
tuple_index.py Implement tuple.index(). 2014-02-10 07:13:32 +02:00
tuple_mult.py py/objtuple: Allow to use inplace-multiplication operator on tuples. 2017-08-09 21:20:42 +10:00
tuple_slice.py tests/basics: Split out specific slice tests to separate files. 2019-10-29 22:22:37 +11:00
types1.py tests/types1: Split out set type test to set_types. 2017-01-06 11:01:55 +03:00
types2.py tests: Split out those tests requiring float and import. 2014-04-17 16:21:43 +01:00
unary_op.py py/runtime: Fix bool unary op for subclasses of native types. 2021-07-23 12:40:00 +10:00
unboundlocal.py py: Make all LOAD_FAST ops check for unbound local. 2014-04-12 18:20:40 +01:00
unpack1.py tests/basics/unpack1.py: Test if *a, = b copies b when b is a list. 2017-03-07 16:48:16 +11:00
while1.py Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02:00
while_cond.py tests: Add tests for things that are not already tested. 2015-03-12 22:48:45 +00:00
while_nest_exc.py tests: Add test for nested while with exc and break. 2014-10-17 17:28:25 +00:00
with1.py tests: Make tests pass on pyboard. 2014-04-13 17:46:30 +01:00
with_break.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
with_continue.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
with_raise.py tests/basics: Add test cases for context manager raising in enter/exit. 2018-09-04 14:37:30 +10:00
with_return.py py: Fix with+for+return bug by popping for-iter when unwinding exc stack. 2015-10-15 17:48:28 +01:00