Author: Antonio Cuni <anto.c...@gmail.com> Branch: stm Changeset: r51350:a2b3f2c9ea45 Date: 2012-01-16 16:29 +0100 http://bitbucket.org/pypy/pypy/changeset/a2b3f2c9ea45/
Log: (arigo, antocuni): fix test_setinteriorfield_all_sizes, and make sure we test both the cases of stm_setinteriorfield inside and outside a transaction diff --git a/pypy/translator/stm/test/test_funcgen.py b/pypy/translator/stm/test/test_funcgen.py --- a/pypy/translator/stm/test/test_funcgen.py +++ b/pypy/translator/stm/test/test_funcgen.py @@ -219,21 +219,21 @@ return NULL -def do_stm_setinteriorfield(argv): +def _play_with_setinteriorfield_1(dummy_arg): change2(prebuilt_array_signed_signed, [500000, -10000000], [102101202]) check2(prebuilt_array_signed_signed, [500000, -10000000, -50], [102101202, 20, -30]) change2(prebuilt_array_char_char, ['a'], ['b']) check2(prebuilt_array_char_char, ['a', chr(255), chr(206)], ['b', chr(20), chr(226)]) - # - rstm.transaction_boundary() - # + return NULL + +def _play_with_setinteriorfield_2(dummy_arg): check2(prebuilt_array_signed_signed, [500000, -10000000, -50], [102101202, 20, -30]) check2(prebuilt_array_char_char, ['a', chr(255), chr(206)], ['b', chr(20), chr(226)]) - return 0 + return NULL # ____________________________________________________________ @@ -339,5 +339,22 @@ def test_setinteriorfield_all_sizes(self): + def do_stm_setinteriorfield(argv): + _play_with_setinteriorfield_1(None) + _play_with_setinteriorfield_2(None) + return 0 t, cbuilder = self.compile(do_stm_setinteriorfield) cbuilder.cmdexec('') + + def test_setinteriorfield_all_sizes_inside_transaction(self): + def do_stm_setinteriorfield(argv): + callback1 = llhelper(CALLBACK, _play_with_setinteriorfield_1) + callback2 = llhelper(CALLBACK, _play_with_setinteriorfield_2) + # + descriptor_init() + perform_transaction(callback1, NULL) + perform_transaction(callback2, NULL) + descriptor_done() + return 0 + t, cbuilder = self.compile(do_stm_setinteriorfield) + cbuilder.cmdexec('') _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit