Home - Summaries: (main) : (py3.11) : (py3.12) : Everything - Nightly builds - Benchmarks - RPython - Builders - About

pypy/module/_hpy_universal/test/_vendored/test_slots_legacy.py::AppTestLegacySlots::()::test_tp_destroy[hybrid]

self = <pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable object at 0x000000004b1bef00>

    def test_tp_destroy(self):
            import gc
            mod = self.make_module("""
                @DEFINE_PointObject
                @DEFINE_Point_new
    
                static long destroyed_x;
    
                HPyDef_SLOT(Point_destroy, HPy_tp_destroy)
                static void Point_destroy_impl(void *obj)
                {
                    PointObject *point = (PointObject *)obj;
                    destroyed_x += point->x;
                }
    
                HPyDef_METH(get_destroyed_x, "get_destroyed_x", HPyFunc_NOARGS)
                static HPy get_destroyed_x_impl(HPyContext *ctx, HPy self)
                {
                    return HPyLong_FromLong(ctx, destroyed_x);
                }
    
                @EXPORT_POINT_TYPE(&Point_new, &Point_destroy)
                @EXPORT(get_destroyed_x)
                @INIT
            """)
            point = mod.Point(7, 3)
            self.debug_collect()
            assert mod.get_destroyed_x() == 0
            del point
            self.debug_collect()
>           assert mod.get_destroyed_x() == 7
E           (application-level) AssertionError

[/buildbot/slave/own-linux-aarch64/build/pypy/module/_hpy_universal/test/_vendored/test_slots.py:37]:31: AssertionError
builder: own-linux-aarch64 build #2827+
test: pypy/module/_hpy_universal/test/_vendored/test_slots_legacy.py::AppTestLegacySlots::()::test_tp_destroy[hybrid]