Esempio n. 1
0
def test_ci(args):
    """
    Run tests in continuous integration environment.
    """
    # Show some info about the current environment.
    from OpenSSL import SSL, __version__ as pyopenssl_version
    from coverage.cmdline import main as coverage_main

    print('PYTHON >%s< on paver detection >%s< with >%s<' % (
        sys.version, pave.os_name, pave.cpu))
    print('%s (%s)' % (
        SSL.SSLeay_version(SSL.SSLEAY_VERSION), SSL.OPENSSL_VERSION_NUMBER))
    print('pyOpenSSL %s' % (pyopenssl_version,))
    coverage_main(argv=['--version'])

    env = os.environ.copy()
    args = [env.get('TEST_ARGUMENTS', '')]
    environment.args = args

    skip_coverage = False
    if pave.os_name.startswith('alpine'):
        # On alpine coverage reporting segfaults.
        skip_coverage = True

    test_type = env.get('TEST_TYPE', 'normal')

    if test_type == 'py3' or test_type == 'os-independent':
        skip_coverage = True

    if skip_coverage:
        os.environ[b'CODECOV_TOKEN'] = ''
    if os.environ.get(b'CODECOV_TOKEN', ''):
        print('Running tests with coverage')
    else:
        print('Running tests WITHOUT coverage.')

    if test_type == 'os-independent':
        return call_task('test_os_independent')

    if test_type == 'py3':
        return call_task('test_py3', args=args)

    exit_code = call_task('test_os_dependent', args=args)

    if os.environ.get(b'CODECOV_TOKEN', ''):
        # Only publish coverage if we have a token.
        call_task('coverator_publish')

    return exit_code
Esempio n. 2
0
def main():
    script_path = os.path.dirname(os.path.abspath(sys.argv[0]))
    sys.exit(coverage_main([
        'run',
        '--append',
        os.path.join(script_path, '..', os.path.basename(sys.argv[0])),
    ] + sys.argv[1:]))
Esempio n. 3
0
def main():
    script_path = os.path.dirname(os.path.abspath(sys.argv[0]))
    sys.exit(
        coverage_main([
            'run',
            '--append',
            os.path.join(script_path, '..', os.path.basename(sys.argv[0])),
        ] + sys.argv[1:]))
Esempio n. 4
0
def main():
    """
  Main handler.
  """
    if sys.argv[1] == 'translate':
        print('Translating the coverage')
        files_path = sys.argv[2]
        all_file_paths = list()
        for root, _, files in os.walk(files_path):
            for relative_file_path in files:
                abs_file_path = os.path.abspath(
                    os.path.join(root, relative_file_path))
                all_file_paths.append(abs_file_path)
        print('Done with path walk')
        translate_coverage(all_file_paths)
    else:
        # Pass commands into coverage package
        sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
        sys.exit(coverage_main())
Esempio n. 5
0
def run(func):
    if os.environ.pop('GIT_CINNABAR_COVERAGE', None):
        from coverage.cmdline import main as coverage_main
        script_path = os.path.abspath(sys.argv[0])
        sys.exit(coverage_main(['run', '--append', script_path] +
                               sys.argv[1:]))
    init_logging()
    if check_enabled('memory') or check_enabled('cpu'):
        reporter = MemoryCPUReporter(memory=check_enabled('memory'),
                                     cpu=check_enabled('cpu'))

    version_check = VersionCheck()
    try:
        retcode = func(sys.argv[1:])
    except Abort as e:
        # These exceptions are normal abort and require no traceback
        retcode = 1
        logging.error(e.message)
    except Exception as e:
        # Catch all exceptions and provide a nice message
        retcode = 70  # Internal software error
        message = getattr(e, 'message', None) or getattr(e, 'reason', None)
        if check_enabled('traceback') or not message:
            traceback.print_exc()
        else:
            logging.error(message)

            sys.stderr.write(
                'Run the command again with '
                '`git -c cinnabar.check=traceback <command>` to see the '
                'full traceback.\n')
    finally:
        if check_enabled('memory') or check_enabled('cpu'):
            reporter.shutdown()
        version_check.join()
    if check_enabled('no-mercurial'):
        if any(
                k.startswith('mercurial.') or k == 'mercurial'
                for k in sys.modules):
            sys.stderr.write('Mercurial libraries were loaded!')
            retcode = 70
    sys.exit(retcode)
Esempio n. 6
0
            password=args.password,
        )
        errors = 'all' in res and res['all'] and 'errors' in res['all'] and \
                 res['all']['errors']

    if build == "base":
        res['base'] = run_flectra(
            type_of_db="base",
            server_path=server_path,
            host=args.host,
            port=args.port,
            user=args.user,
            password=args.password,
        )
        errors = 'base' in res and res['base'] and 'errors' in res['base'] and \
                 res['base']['errors']

    print("************ ERRORS ************  : ", errors)
    return errors


if __name__ == '__main__':
    rc = main()

    if rc:
        exit(rc)

    coverage_main(["report"])

    exit(rc)
Esempio n. 7
0
def test(ctx):
    coverage_main(["run", "tests.py"])
    coverage_main(["xml"])