Пример #1
0
def get_toxresults_info(linkstore, for_link, newest=True):
    result = []
    toxlinks = linkstore.get_links(rel="toxresult", for_entrypath=for_link)
    for toxlink, toxenvs in iter_toxresults(toxlinks,
                                            load_toxresult,
                                            newest=newest):
        if toxenvs is None:
            log.error("Couldn't parse test results %s." % toxlink)
            continue
        for toxenv in toxenvs:
            status = 'unknown'
            if not toxenv.setup['failed'] and not toxenv.test[
                    'failed'] and toxenv.test['commands']:
                status = 'passed'
            elif toxenv.setup['failed'] or toxenv.test['failed']:
                status = 'failed'
            info = dict(basename=toxlink.basename,
                        _key="-".join(toxenv.key),
                        host=toxenv.host,
                        platform=toxenv.platform,
                        envname=toxenv.envname,
                        setup=toxenv.setup,
                        test=toxenv.test,
                        status=status)
            if toxenv.pyversion:
                info["pyversion"] = toxenv.pyversion
            result.append(info)
    return result
Пример #2
0
def get_toxresults_info(linkstore, for_link, newest=True):
    result = []
    toxlinks = linkstore.get_links(rel="toxresult", for_entrypath=for_link)
    for toxlink, toxenvs in iter_toxresults(toxlinks, load_toxresult, newest=newest):
        if toxenvs is None:
            log.error("Couldn't parse test results %s." % toxlink)
            continue
        for toxenv in toxenvs:
            info = dict(
                basename=toxlink.basename,
                _key="-".join(toxenv.key),
                host=toxenv.host,
                platform=toxenv.platform,
                envname=toxenv.envname,
                setup=toxenv.setup,
                test=toxenv.test,
                failed=toxenv.failed)
            if toxenv.pyversion:
                info["pyversion"] = toxenv.pyversion
            result.append(info)
    return result
Пример #3
0
def show_test_status(hub, toxlinks):
    load_toxresult = partial(_load_toxresult, hub)
    for toxlink, toxenvs in iter_toxresults(toxlinks, load_toxresult):
        if toxenvs is None:
            hub.error("corrupt toxresult, skipping: %s" % (toxlink,))
            continue
        for toxenv in toxenvs:
            prefix = "%-10s %-7s %-10s" % (toxenv.host, toxenv.platform, toxenv.envname)
            if not toxenv.setup['commands']:
                hub.error("%s no setup was performed" % prefix)
            elif toxenv.setup['failed']:
                hub.error("%s setup failed" % prefix)
                show_commands(hub, toxenv.setup)
            if toxenv.pyversion:
                prefix = prefix + " " + toxenv.pyversion
            if not toxenv.test['commands']:
                hub.error("%s no tests were run" % prefix)
            elif toxenv.test['failed']:
                hub.error("%s tests failed" % prefix)
                show_commands(hub, toxenv.test)
            else:
                hub.line("%s tests passed" % prefix)