micropython/tests/basics
Damien George 0a59938574 py/mpz: Fix overflow of borrow in mpn_div.
For certain operands to mpn_div, the existing code path for
`DIG_SIZE == MPZ_DBL_DIG_SIZE / 2` had a bug in it where borrow could still
overflow in the `(x >= *n || *n - x <= borrow)` branch, ie
`borrow + x - (mpz_dbl_dig_t)*n` overflows the borrow variable.  In such
cases the subsequent right-shift of borrow would not bring in the overflow
bit, leading to an error in the result.  An example division that had
overflow when MPZ_DIG_SIZE = 16 is `(2 ** 48 - 1) ** 2 // (2 ** 48 - 1)`.

This is fixed in this commit by simplifying the code and handling the low
digits of borrow first, and then the upper bits (to shift down) separately.
There is no longer a distinction between `DIG_SIZE < MPZ_DBL_DIG_SIZE / 2`
and `DIG_SIZE == MPZ_DBL_DIG_SIZE / 2`.

This commit also simplifies the second part of the calculation so that
borrow does not need to be negated (instead the code just works knowing
that borrow is negative and using + instead of - in calculations involving
borrow).

Fixes #6777.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-08 11:50:05 +11:00
..
0prelim.py
andor.py
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 tests/basics/array1.py: Add equality testing for array. 2020-02-21 14:25:03 +11: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 tests: Rename "array" module to "uarray". 2019-10-22 19:16:54 +11:00
array_micropython.py.exp
assign1.py
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
async_await.py.exp
async_await2.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
async_await2.py.exp
async_def.py
async_def.py.exp
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
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_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
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
break.py
builtin_abs.py
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
builtin_bin.py
builtin_bin_intbig.py
builtin_callable.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
builtin_chr.py
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
builtin_dir.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
builtin_divmod.py
builtin_divmod_intbig.py
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
builtin_hash_gen.py
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
builtin_help.py.exp
builtin_hex.py
builtin_hex_intbig.py
builtin_id.py
builtin_issubclass.py
builtin_len1.py
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
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
builtin_oct_intbig.py
builtin_ord.py
builtin_override.py tests: Add tests for overriding builtins.__import__. 2019-07-31 22:37:44 +10:00
builtin_pow.py
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
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
builtin_range_binop.py py/objrange: Implement (in)equality comparison between range objects. 2018-02-14 23:17:06 +11:00
builtin_reversed.py
builtin_round.py
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
builtin_sorted.py
builtin_sum.py
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
bytearray_add.py
bytearray_append.py
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
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
bytes_compare2.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11:00
bytes_compare3.py
bytes_compare3.py.exp
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
bytes_count.py tests: Make bytes/str.count() tests skippable. 2018-10-22 22:50:28 +11:00
bytes_find.py
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
bytes_gen.py
bytes_large.py
bytes_mult.py
bytes_partition.py
bytes_replace.py
bytes_split.py
bytes_strip.py
bytes_subscr.py
class1.py
class2.py
class3.py
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
class_call.py
class_contains.py
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
class_getattr.py tests/basics/class_getattr: Remove invalid test for __getattribute__. 2018-10-18 12:28:09 +11:00
class_inherit1.py
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
class_item.py
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
class_notimpl.py py/objsingleton: Use mp_generic_unary_op for singleton objects. 2019-12-27 12:53:36 +11:00
class_number.py
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
class_store_class.py
class_str.py
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
class_super_closure.py
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
class_use_other.py
closure1.py
closure2.py
closure_defargs.py
closure_manyvars.py
closure_namedarg.py
compare_multi.py
comprehension1.py
containment.py tests/run-tests: Use -BS flags when running CPython. 2020-09-25 12:27:23 +10:00
continue.py
decorator.py
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
del_global.py
del_local.py
del_name.py
del_subscr.py
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
dict_clear.py
dict_construct.py
dict_copy.py
dict_del.py
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
dict_fromkeys.py
dict_fromkeys2.py
dict_get.py
dict_intern.py
dict_iterator.py
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
dict_setdefault.py
dict_specialmeth.py
dict_update.py
dict_views.py
equal.py
equal_class.py
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
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
exception_chain.py.exp
exceptpoly.py
exceptpoly2.py
floordivide.py
floordivide_intbig.py
for1.py
for2.py
for3.py
for_break.py
for_else.py
for_range.py
for_return.py
frozenset1.py
frozenset_add.py
frozenset_binop.py
frozenset_copy.py
frozenset_difference.py
frozenset_set.py
fun1.py
fun2.py
fun3.py
fun_annotations.py
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
fun_callstar.py
fun_callstardblstar.py
fun_defargs.py
fun_defargs2.py
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
fun_kwonly.py
fun_kwonlydef.py
fun_kwvarargs.py
fun_largestate.py
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
fun_varargs.py
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
gen_yield_from_exc.py
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
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
gen_yield_from_stopped.py
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
generator2.py
generator_args.py
generator_close.py py/objgenerator: Implement PEP479, StopIteration convs to RuntimeError. 2018-09-20 15:36:59 +10:00
generator_closure.py
generator_exc.py
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
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
globals_del.py
ifcond.py
ifexpr.py
int1.py
int2.py
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
int_big_and2.py
int_big_and3.py
int_big_cmp.py
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
int_big_mod.py
int_big_mul.py
int_big_or.py
int_big_or2.py
int_big_or3.py
int_big_pow.py
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
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
int_big_xor3.py
int_big_zeroone.py
int_bytes.py
int_bytes_intbig.py
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
int_divmod.py
int_divmod_intbig.py
int_divzero.py
int_intbig.py
int_small.py
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
iter0.py
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
iter_of_iter.py
lambda1.py
lambda_defargs.py
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
list_compare.py
list_copy.py
list_count.py
list_extend.py
list_index.py
list_insert.py
list_mult.py
list_pop.py
list_remove.py
list_reverse.py
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
list_slice_assign.py
list_slice_assign_grow.py
list_sort.py
list_sum.py
logic_constfolding.py
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
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
module2.py all: Rename "sys" module to "usys". 2020-09-04 00:10:24 +10:00
module2.py.exp
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
object_dict.py
object_new.py
op_error.py tests/basics: Split out specific bytearray tests to separate files. 2019-10-29 22:22:37 +11: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_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
ordereddict_eq.py.exp
parser.py
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
scope.py
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
seq_unpack.py
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
set_comprehension.py
set_containment.py
set_copy.py
set_difference.py
set_discard.py
set_intersection.py
set_isdisjoint.py
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
set_iter_of_iter.py
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
set_specialmeth.py
set_symmetric_difference.py
set_type.py
set_union.py
set_unop.py
set_update.py
slice_attrs.py
slice_indices.py py/objslice: Add support for indices() method on slice objects. 2019-12-28 23:55:15 +11:00
slice_intbig.py
slots_bool_len.py
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
string1.py
string_center.py
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
string_crlf_conversion.py
string_endswith.py
string_endswith_upy.py
string_endswith_upy.py.exp
string_escape.py
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
string_format_error.py
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_index.py
string_istest.py
string_join.py
string_large.py
string_mult.py
string_partition.py
string_replace.py
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
string_rpartition.py
string_rsplit.py
string_slice.py
string_split.py
string_splitlines.py
string_startswith.py
string_startswith_upy.py
string_startswith_upy.py.exp
string_strip.py
string_upperlow.py
struct1.py
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
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
struct_micropython.py.exp
subclass_classmethod.py
subclass_native1.py
subclass_native2_list.py
subclass_native2_tuple.py tests/basics: Expand test cases for equality of subclasses. 2020-01-30 14:53:07 +11: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
subclass_native5.py
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
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
try1.py
try2.py
try3.py
try4.py
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
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
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
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
try_finally_return.py
try_finally_return2.py
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
try_reraise2.py
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
tuple_count.py
tuple_index.py
tuple_mult.py
tuple_slice.py tests/basics: Split out specific slice tests to separate files. 2019-10-29 22:22:37 +11:00
types1.py
types2.py
unary_op.py
unboundlocal.py
unpack1.py
while1.py
while_cond.py
while_nest_exc.py
with1.py
with_break.py
with_continue.py
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