crossbario / cfxdb

Database schemata for CrossbarFX and XBR, based on zLMDB
MIT License
0 stars 6 forks source link

CI: datetime roundtrip tests 1h off #81

Closed oberstet closed 2 years ago

oberstet commented 2 years ago
________________________________________________________________ summary ________________________________________________________________
  flake8: commands succeeded
  mypy: commands succeeded
  yapf: commands succeeded
ERROR:   pytest: commands failed
  sphinx: commands succeeded

cfxdb/tests/user/test_organization.py::test_org_fbs_roundtrip FAILED
cfxdb/tests/user/test_organization.py::test_org_cbor_roundtrip FAILED
cfxdb/tests/user/test_user.py::test_user_fbs_roundtrip FAILED
cfxdb/tests/user/test_user.py::test_user_cbor_roundtrip FAILED

=============================================================== FAILURES ================================================================
_____________________________________________________ test_user_fbs_roundtrip_perf ______________________________________________________

user_fbs = <cfxdb.user.user_fbs.UserFbs object at 0x7fda1544ad30>, builder = <flatbuffers.builder.Builder object at 0x7fda154770b0>

    def test_user_fbs_roundtrip_perf(user_fbs, builder):
        # serialize to bytes (flatbuffers) from python object
        obj = user_fbs.build(builder)
        builder.Finish(obj)
        data = builder.Output()

        # create python object from bytes (flatbuffes)
        def loop():
            _user = UserFbs.cast(data)
            if True:
                assert _user.oid == user_fbs.oid
                assert len(str(_user.oid)) == 36
                assert _user.label == user_fbs.label
                assert _user.description == user_fbs.description
                assert _user.tags == user_fbs.tags

                assert _user.email == user_fbs.email
                assert _user.registered == user_fbs.registered
                assert _user.pubkey == user_fbs.pubkey
                assert len(_user.pubkey) == 64

        N = 5
        M = 50000
        samples = []
        print('measuring:')
        for i in range(N):
>           secs = timeit.timeit(loop, number=M)

cfxdb/tests/test_perf_serializer.py:193: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../cpy39/lib/python3.9/timeit.py:233: in timeit
    return Timer(stmt, setup, timer, globals).timeit(number)
../../../cpy39/lib/python3.9/timeit.py:177: in timeit
    timing = self.inner(it, self.timer)
<timeit-src>:6: in inner
    ???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    def loop():
        _user = UserFbs.cast(data)
        if True:
            assert _user.oid == user_fbs.oid
            assert len(str(_user.oid)) == 36
            assert _user.label == user_fbs.label
            assert _user.description == user_fbs.description
            assert _user.tags == user_fbs.tags

            assert _user.email == user_fbs.email
>           assert _user.registered == user_fbs.registered
E           assert datetime.datetime(2022, 3, 27, 3, 48, 57, 955976) == datetime.datetime(2022, 3, 27, 2, 48, 57, 955976)
E            +  where datetime.datetime(2022, 3, 27, 3, 48, 57, 955976) = <cfxdb.user.user_fbs.UserFbs object at 0x7fda149dbf40>.registered
E            +  and   datetime.datetime(2022, 3, 27, 2, 48, 57, 955976) = <cfxdb.user.user_fbs.UserFbs object at 0x7fda1544ad30>.registered

cfxdb/tests/test_perf_serializer.py:184: AssertionError
_____________________________________________________ test_user_cbor_roundtrip_perf _____________________________________________________

user_cbor = <cfxdb.user.user.User object at 0x7fda15409280>

    def test_user_cbor_roundtrip_perf(user_cbor):
        # serialize to bytes (cbor) from python object
        obj = user_cbor.marshal()
        data = cbor2.dumps(obj)

        # create python object from bytes (cbor)
        def loop():
            _obj = cbor2.loads(data)
            _user = User.parse(_obj)
            if True:
                assert _user.oid == user_cbor.oid
                assert _user.label == user_cbor.label
                assert _user.description == user_cbor.description
                assert _user.tags == user_cbor.tags
                assert _user.email == user_cbor.email
                assert _user.registered == user_cbor.registered
                assert _user.pubkey == user_cbor.pubkey

        N = 5
        M = 50000
        samples = []
        print('measuring:')
        for i in range(N):
>           secs = timeit.timeit(loop, number=M)

cfxdb/tests/test_perf_serializer.py:228: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../cpy39/lib/python3.9/timeit.py:233: in timeit
    return Timer(stmt, setup, timer, globals).timeit(number)
../../../cpy39/lib/python3.9/timeit.py:177: in timeit
    timing = self.inner(it, self.timer)
<timeit-src>:6: in inner
    ???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    def loop():
        _obj = cbor2.loads(data)
        _user = User.parse(_obj)
        if True:
            assert _user.oid == user_cbor.oid
            assert _user.label == user_cbor.label
            assert _user.description == user_cbor.description
            assert _user.tags == user_cbor.tags
            assert _user.email == user_cbor.email
>           assert _user.registered == user_cbor.registered
E           assert datetime.datetime(2022, 3, 27, 3, 48, 58, 138489) == datetime.datetime(2022, 3, 27, 2, 48, 58, 138489)
E            +  where datetime.datetime(2022, 3, 27, 3, 48, 58, 138489) = <cfxdb.user.user.User object at 0x7fda154095e0>.registered
E            +  and   datetime.datetime(2022, 3, 27, 2, 48, 58, 138489) = <cfxdb.user.user.User object at 0x7fda15409280>.registered

cfxdb/tests/test_perf_serializer.py:220: AssertionError
________________________________________________________ test_org_fbs_roundtrip _________________________________________________________

org_fbs = <cfxdb.user.organization_fbs.OrganizationFbs object at 0x7fda149db6a0>
builder = <flatbuffers.builder.Builder object at 0x7fda1543ed60>

    def test_org_fbs_roundtrip(org_fbs, builder):
        # serialize to bytes (flatbuffers) from python object
        obj = org_fbs.build(builder)
        builder.Finish(obj)
        data = builder.Output()
        assert len(data) == 192

        # create python object from bytes (flatbuffes)
        _org = OrganizationFbs.cast(data)

        # assert _org == org_fbs

        assert _org.oid == org_fbs.oid
        assert _org.label == org_fbs.label
        assert _org.description == org_fbs.description
        assert _org.tags == org_fbs.tags
        assert _org.name == org_fbs.name
        assert _org.otype == org_fbs.otype
>       assert _org.registered == org_fbs.registered
E       assert datetime.datetime(2022, 3, 27, 3, 51, 33, 288125) == datetime.datetime(2022, 3, 27, 2, 51, 33, 288125)
E        +  where datetime.datetime(2022, 3, 27, 3, 51, 33, 288125) = <cfxdb.user.organization_fbs.OrganizationFbs object at 0x7fda149dbe80>.registered
E        +  and   datetime.datetime(2022, 3, 27, 2, 51, 33, 288125) = <cfxdb.user.organization_fbs.OrganizationFbs object at 0x7fda149db6a0>.registered

cfxdb/tests/user/test_organization.py:69: AssertionError
________________________________________________________ test_org_cbor_roundtrip ________________________________________________________

org_cbor = <cfxdb.user.organization.Organization object at 0x7fda153a80a0>

    def test_org_cbor_roundtrip(org_cbor):
        # serialize to bytes (cbor) from python object
        obj = org_cbor.marshal()
        data = cbor2.dumps(obj)
        assert len(data) == 177

        # create python object from bytes (cbor)
        _obj = cbor2.loads(data)
        _org = Organization.parse(_obj)

        # assert _org == org_cbor

        assert _org.oid == org_cbor.oid
        assert _org.label == org_cbor.label
        assert _org.description == org_cbor.description
        assert _org.tags == org_cbor.tags
        assert _org.name == org_cbor.name
        assert _org.otype == org_cbor.otype
>       assert _org.registered == org_cbor.registered
E       assert datetime.datetime(2022, 3, 27, 3, 51, 33, 295186) == datetime.datetime(2022, 3, 27, 2, 51, 33, 295186)
E        +  where datetime.datetime(2022, 3, 27, 3, 51, 33, 295186) = <cfxdb.user.organization.Organization object at 0x7fda153a8430>.registered
E        +  and   datetime.datetime(2022, 3, 27, 2, 51, 33, 295186) = <cfxdb.user.organization.Organization object at 0x7fda153a80a0>.registered

cfxdb/tests/user/test_organization.py:105: AssertionError
________________________________________________________ test_user_fbs_roundtrip ________________________________________________________

user_fbs = <cfxdb.user.user_fbs.UserFbs object at 0x7fda153cc700>, builder = <flatbuffers.builder.Builder object at 0x7fda15379190>

    def test_user_fbs_roundtrip(user_fbs, builder):
        # serialize to bytes (flatbuffers) from python object
        obj = user_fbs.build(builder)
        builder.Finish(obj)
        data = builder.Output()

        # create python object from bytes (flatbuffes)
        _user = UserFbs.cast(data)

        # assert _user == user_fbs

        assert _user.oid == user_fbs.oid
        assert _user.label == user_fbs.label
        assert _user.description == user_fbs.description
        assert _user.tags == user_fbs.tags
        assert _user.email == user_fbs.email
>       assert _user.registered == user_fbs.registered
E       assert datetime.datetime(2022, 3, 27, 3, 51, 33, 301906) == datetime.datetime(2022, 3, 27, 2, 51, 33, 301906)
E        +  where datetime.datetime(2022, 3, 27, 3, 51, 33, 301906) = <cfxdb.user.user_fbs.UserFbs object at 0x7fda153cc190>.registered
E        +  and   datetime.datetime(2022, 3, 27, 2, 51, 33, 301906) = <cfxdb.user.user_fbs.UserFbs object at 0x7fda153cc700>.registered

cfxdb/tests/user/test_user.py:72: AssertionError
_______________________________________________________ test_user_cbor_roundtrip ________________________________________________________

user_cbor = <cfxdb.user.user.User object at 0x7fda153a8b50>

    def test_user_cbor_roundtrip(user_cbor):
        # serialize to bytes (cbor) from python object
        obj = user_cbor.marshal()
        data = cbor2.dumps(obj)

        # create python object from bytes (cbor)
        _obj = cbor2.loads(data)
        _user = User.parse(_obj)

        # assert _user == user_cbor

        assert _user.oid == user_cbor.oid
        assert _user.label == user_cbor.label
        assert _user.description == user_cbor.description
        assert _user.tags == user_cbor.tags
        assert _user.email == user_cbor.email
>       assert _user.registered == user_cbor.registered
E       assert datetime.datetime(2022, 3, 27, 3, 51, 33, 307615) == datetime.datetime(2022, 3, 27, 2, 51, 33, 307615)
E        +  where datetime.datetime(2022, 3, 27, 3, 51, 33, 307615) = <cfxdb.user.user.User object at 0x7fda153a8940>.registered
E        +  and   datetime.datetime(2022, 3, 27, 2, 51, 33, 307615) = <cfxdb.user.user.User object at 0x7fda153a8b50>.registered

cfxdb/tests/user/test_user.py:92: AssertionError
=========================================================== warnings summary ============================================================
.tox/pytest/lib/python3.9/site-packages/argon2.py:4
  /home/oberstet/scm/crossbario/cfxdb/.tox/pytest/lib/python3.9/site-packages/argon2.py:4: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
    import imp

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
======================================================== short test summary info ========================================================
FAILED cfxdb/tests/test_perf_serializer.py::test_user_fbs_roundtrip_perf - assert datetime.datetime(2022, 3, 27, 3, 48, 57, 955976) ==...
FAILED cfxdb/tests/test_perf_serializer.py::test_user_cbor_roundtrip_perf - assert datetime.datetime(2022, 3, 27, 3, 48, 58, 138489) =...
FAILED cfxdb/tests/user/test_organization.py::test_org_fbs_roundtrip - assert datetime.datetime(2022, 3, 27, 3, 51, 33, 288125) == dat...
FAILED cfxdb/tests/user/test_organization.py::test_org_cbor_roundtrip - assert datetime.datetime(2022, 3, 27, 3, 51, 33, 295186) == da...
FAILED cfxdb/tests/user/test_user.py::test_user_fbs_roundtrip - assert datetime.datetime(2022, 3, 27, 3, 51, 33, 301906) == datetime.d...
FAILED cfxdb/tests/user/test_user.py::test_user_cbor_roundtrip - assert datetime.datetime(2022, 3, 27, 3, 51, 33, 307615) == datetime....
========================================== 6 failed, 54 passed, 1 warning in 347.20s (0:05:47) ==========================================
ERROR: InvocationError for command /home/oberstet/scm/crossbario/cfxdb/.tox/pytest/bin/pytest -sv cfxdb (exited with code 1)
________________________________________________________________ summary ________________________________________________________________
ERROR:   pytest: commands failed
(cpy39_9) (base) oberstet@intel-nuci7:~/scm/crossbario/cfxdb$ 
oberstet commented 2 years ago

fixed https://github.com/crossbario/cfxdb/actions/runs/2046612419