circuitpython/tests/basics
Damien George e1fb03f3e2 py: Fix VM crash with unwinding jump out of a finally block.
This patch fixes a bug in the VM when breaking within a try-finally.  The
bug has to do with executing a break within the finally block of a
try-finally statement.  For example:

    def f():
        for x in (1,):
            print('a', x)
            try:
                raise Exception
            finally:
                print(1)
                break
            print('b', x)
    f()

Currently in uPy the above code will print:

    a 1
    1
    1
    segmentation fault (core dumped)  micropython

Not only is there a seg fault, but the "1" in the finally block is printed
twice.  This is because when the VM executes a finally block it doesn't
really know if that block was executed due to a fall-through of the try (no
exception raised), or because an exception is active.  In particular, for
nested finallys the VM has no idea which of the nested ones have active
exceptions and which are just fall-throughs.  So when a break (or continue)
is executed it tries to unwind all of the finallys, when in fact only some
may be active.

It's questionable whether break (or return or continue) should be allowed
within a finally block, because they implicitly swallow any active
exception, but nevertheless it's allowed by CPython (although almost never
used in the standard library).  And uPy should at least not crash in such a
case.

The solution here relies on the fact that exception and finally handlers
always appear in the bytecode after the try body.

Note: there was a similar bug with a return in a finally block, but that
was previously fixed in b735208403
2019-03-05 16:05:05 +11: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
array1.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
array_add.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
array_construct.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
array_construct2.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
array_construct_endian.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
array_intbig.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
array_micropython.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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
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 tests: Add 6 tests for async await/for/with. 2016-04-13 15:27:06 +01: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 tests: Add 6 tests for async await/for/with. 2016-04-13 15:27:06 +01: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 tests: Add 6 tests for async await/for/with. 2016-04-13 15:27:06 +01:00
async_for2.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_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 py/compile: Fix async-for/async-with to work with simpler exc on stack. 2016-09-28 11:52:13 +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 tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
bool1.py tests: Add a few tests for bool, bytearray, float to improve coverage. 2015-08-29 23:13:28 +01: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 py: Fix builtin callable so it checks user-defined instances correctly. 2014-11-03 16:09:39 +00: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 tests: Fix few test for proper "skipped" detection with qemu-arm's tinytest. 2017-12-12 23:45:48 +02:00
builtin_delattr.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
builtin_dir.py py/modbuiltins: Simplify and generalise dir() by probing qstrs. 2018-02-19 16:12:44 +11: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 tests: Add some tests to improve coverage. 2015-01-29 14:56:09 +00: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_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_filter.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11:00
builtin_getattr.py tests/basics: Rename remaining tests that are for built-in functions. 2018-02-07 15:55:52 +11: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/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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 tests/bytearray1: Add testcases for "in" operator. 2016-02-14 18:57:18 +02: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/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
bytearray_construct_endian.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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 all: Use the name MicroPython consistently in comments 2017-07-31 18:35:40 +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/bytes_add: Add tests for optimised bytes addition. 2017-03-16 14:31:03 +11:00
bytes_add_array.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
bytes_add_endian.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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/basic: Make various tests skippable. 2017-03-09 00:07:19 +01: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/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
bytes_construct.py tests/basic: Make various tests skippable. 2017-03-09 00:07:19 +01:00
bytes_construct_array.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
bytes_construct_endian.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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: Add tests for %-formatting of bytes. 2015-12-20 16:54:34 +02: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_bind_self.py py: Be more restrictive binding self when looking up instance attrs. 2015-12-26 12:41:31 +00: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 tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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_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/class_inplace_op: Test for inplace op fallback to normal one. 2017-09-04 16:44:38 +03: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: Improve user class coverage. 2016-11-22 15:49:02 +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/objtype: Handle NotImplemented return from binary special methods. 2017-08-30 01:39:24 +03: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_reverse_op.py tests/class_reverse_op: Test for reverse arith ops special methods. 2017-09-10 17:05:57 +03: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 py/objstr: Raise an exception for wrong type on RHS of str binary op. 2017-08-09 21:25:48 +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: Modify tests that print repr of an exception with 1 arg. 2018-08-17 15:46:04 +10: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 Move tests in basic/tests/ up one level preparating to multiple test dirs. 2014-01-19 18:41:55 +02: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 tests: Add some more tests to improve coverage of py/parse.c. 2017-12-19 16:13:00 +11:00
errno1.py.exp tests: Add some more tests to improve coverage of py/parse.c. 2017-12-19 16:13:00 +11: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 tests: Modify tests that print repr of an exception with 1 arg. 2018-08-17 15:46:04 +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_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 py/objboundmeth: Support loading generic attrs from the method. 2018-12-06 18:02:41 +11: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_send.py tests: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
gen_yield_from_stopped.py tests: Add testcase for yielding from a stopped generator. 2016-04-28 02:08:51 +03:00
gen_yield_from_throw.py tests/basics: Split out gen throw tests from yield-from-throw tests. 2018-09-28 11:35:31 +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 tests/basics/generator_pend_throw: Add test for just-started generator. 2017-12-19 15:02:34 +11:00
generator_pend_throw.py.exp tests/basics/generator_pend_throw: Add test for just-started generator. 2017-12-19 15:02:34 +11:00
generator_pep479.py py/objgenerator: Implement PEP479, StopIteration convs to RuntimeError. 2018-09-20 15:36:59 +10:00
generator_pep479.py.exp py/objgenerator: Implement PEP479, StopIteration convs to RuntimeError. 2018-09-20 15:36:59 +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 tests/basics: Split out gen throw tests from yield-from-throw tests. 2018-09-28 11:35:31 +10: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 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_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 bug with overflowing C-shift in division routine. 2016-05-08 21:38:43 +01: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 tests: Add some more tests to improve coverage of py/parse.c. 2017-12-19 16:13:00 +11: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 tests: Move non-filesystem io tests to basics dir with io_ prefix. 2018-06-27 16:55:05 +10: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: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01: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: Add more list tests to improve coverage testing. 2016-08-15 10:46:35 +10: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: Enable tests for list slice getting with 3rd arg. 2016-11-26 16:39:25 +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: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
memoryview2.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
memoryview_gc.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
memoryview_intbig.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
module1.py tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01:00
module2.py tests: Add missing tests for builtins, and many other things. 2015-04-04 22:05:30 +01: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/namedtuple*: Import ucollections first. 2018-06-27 14:58:14 +10: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: Rewrite some tests so they can run without needing eval/exec. 2018-02-14 16:50:20 +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_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 tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03: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
python34.py tests: Modify tests that print repr of an exception with 1 arg. 2018-08-17 15:46:04 +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 Modify set tests to print sorted sets directly 2014-04-07 05:00:03 +01:00
set_basic.py tests/run-tests: Allow to skip set tests. 2017-01-05 00:16:29 +03: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_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_methods.py tests/basics/special_methods: Add testcases for __int__. 2018-12-07 17:28:04 +11:00
special_methods2.py tests/basics/special_methods2: Typo fix in comment. 2018-12-13 01:29:01 +11: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 tests/basics/string_compare.py: Add test with string that hashes to 0. 2018-04-05 01:04:38 +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: Split large tests into smaller files, to run with a small heap. 2016-03-15 13:07:41 +00: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/basics: Move string-modulo-format int tests to dedicated file. 2017-03-15 17:34:47 +11:00
string_format_modulo_int.py tests/basics: Move string-modulo-format int tests to dedicated file. 2017-03-15 17:34:47 +11: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: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01: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/binary.c: Fix bug when packing big-endian 'Q' values. 2017-08-15 11:33:43 +10:00
struct2.py py/modstruct: Check and prevent buffer-write overflow in struct packing. 2017-09-01 11:11:09 +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: Rename test scripts, changing - to _ for consistency. 2014-07-05 06:14:29 +01:00
subclass_native3.py tests: Modify tests that print repr of an exception with 1 arg. 2018-08-17 15:46:04 +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 py: Allow subclass of native object to delegate to the native buffer_p. 2015-02-09 15:08:00 +00:00
subclass_native_call.py tests/basics: Add test for calling a subclass of a native class. 2018-02-24 23:13:42 +11: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 objtuple: Go out of the way to support comparison of subclasses. 2014-05-11 03:33:19 +03: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
syntaxerror.py tests: Automatically skip tests that require eval, exec or frozenset. 2018-02-14 16:46:44 +11:00
sys1.py tests/basics: Convert "sys.exit()" to "raise SystemExit". 2017-06-10 20:03:01 +03:00
sys_getsizeof.py tests/basics: Add tests to improve coverage of py/objdeque.c. 2018-02-21 23:19:06 +11: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_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_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_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: Add test for tuple inplace add. 2017-04-05 12:38:18 +10: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
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 tests: Add test for "not" of a user defined class. 2015-12-10 22:21:57 +00: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