def test_update_build_status(app, f_projects): p = f_projects[0] bs = BuildStatus( repo_name="foobar", build_id="12345", href="http://example.com/afasdfgt", status="pending" ) ProjectLogic.get_or_create_build_info_from_bs(p, bs) app.db.session.commit() build = ProjectLogic.get_or_create_build_info_from_bs(p, bs) status_updated_on_first = build.status_updated_on ProjectLogic.update_build_info_status(build, bs) app.db.session.commit() bi_list = DhBuildInfo.query.all() assert len(bi_list) == 1 bi = bi_list[0] assert bi.id == bs.build_id assert bi.status == bs.status assert bi.status_updated_on == status_updated_on_first bs.status = "failed" ProjectLogic.update_build_info_status(build, bs) app.db.session.commit() bi_list = DhBuildInfo.query.all() assert len(bi_list) == 1 bi = bi_list[0] assert bi.id == bs.build_id assert bi.status == bs.status assert bi.status_updated_on > status_updated_on_first