コード例 #1
0
def test_process(mocker: Any) -> None:
    program = ArgumentParser()
    program.add_argument('-P', '--producer', action='append', required=True)
    sys.argv.append('--producer')
    sys.argv.append('travis')
    sys.argv.append('--travis-slug')
    sys.argv.append('redaxmedia')
    process = mocker.spy(producer.travis, 'run')
    producer.process(program)

    assert process.call_count == 1
コード例 #2
0
def test_process(mocker : Any) -> None:
	if os.environ.get('TRAVIS_TOKEN'):
		program = ArgumentParser()
		program.add_argument('-P', '--producer', action='append', required=True)
		sys.argv.append('--producer')
		sys.argv.append('travis')
		sys.argv.append('--travis-slug')
		sys.argv.append('redaxmedia')
		sys.argv.append('--travis-token')
		sys.argv.append(os.environ.get('TRAVIS_TOKEN'))
		process = mocker.spy(producer.travis, 'run')
		producer.process(program)

		assert process.call_count == 1
	else:
		pytest.skip('TRAVIS_TOKEN is not defined')
コード例 #3
0
ファイル: core.py プロジェクト: cpoissonnier/chroma-feedback
def run(program: ArgumentParser) -> None:
    status = None

    if sys.version_info < (3, 4):
        exit(
            wording.get('version_no').format(sys.version_info.major,
                                             sys.version_info.minor) +
            wording.get('exclamation_mark'))

    # report header

    if threading.active_count() == 1:
        reporter.print_header()
        print()

    # process producer

    producer_result = producer.process(program)

    # handle exit

    if not producer_result:
        exit(wording.get('result_no') + wording.get('exclamation_mark'))

    # report producer

    producer_report = reporter.create_producer_report(producer_result)
    if producer_report:
        reporter.print_report(producer_report)
        print()

    # handle dry run

    args = helper.get_first(program.parse_known_args())
    if args.dry_run is False:

        # process consumer

        status = helper.get_producer_status(producer_result)
        consumer_result = consumer.process(program, status)

        # report consumer

        consumer_report = reporter.create_consumer_report(consumer_result)
        if consumer_report:
            reporter.print_report(consumer_report)
            print()

    # handle thread

    if args.background_run is True:
        threading.Timer(args.background_interval, run, args=[program]).start()
        if helper.is_linux():
            systray_report = reporter.create_systray_report(producer_result)
            if systray.is_active():
                systray.update(status, systray_report)
            else:
                systray.create(status, systray_report)
コード例 #4
0
ファイル: core.py プロジェクト: redaxmedia/chroma-feedback
def run(program: ArgumentParser) -> None:
    args = helper.get_first(program.parse_known_args())
    status = None

    # process producer

    producer_result = producer.process(program)

    # handle exit

    if not producer_result:
        sys.exit(wording.get('result_no') + wording.get('exclamation_mark'))

    # report producer

    producer_report = reporter.create_producer_report(producer_result)

    if producer_report:
        reporter.print_report(producer_report)
        print()

    # handle dry run

    if args.dry_run is False:

        # process consumer

        status = helper.get_producer_status(producer_result)
        consumer_result = consumer.process(program, status)

        # report consumer

        consumer_report = reporter.create_consumer_report(consumer_result)

        if consumer_report:
            reporter.print_report(consumer_report)
            print()

    # handle systray

    if loop.is_created() is True:
        if systray.is_created() is True:
            systray.update(status, producer_report)
        else:
            systray.create(status, producer_report)