Ejemplo n.º 1
0
        jobs.append(test_job)

  if not jobs:
    print "No jobs to run."
    for image in docker_images.itervalues():
      dockerjob.remove_image(image, skip_nonexistent=True)
    sys.exit(1)

  root = ET.Element('testsuites')
  testsuite = ET.SubElement(root, 'testsuite', id='1', package='grpc', name='tests')

  if jobset.run(jobs, newline_on_success=True, maxjobs=args.jobs, xml_report=testsuite):
    jobset.message('SUCCESS', 'All tests passed', do_newline=True)
  else:
    jobset.message('FAILED', 'Some tests failed', do_newline=True)

  tree = ET.ElementTree(root)
  tree.write('report.xml', encoding='UTF-8')

finally:
  # Check if servers are still running.
  for server, job in server_jobs.iteritems():
    if not job.is_running():
      print 'Server "%s" has exited prematurely.' % server

  dockerjob.finish_jobs([j for j in server_jobs.itervalues()])

  for image in docker_images.itervalues():
    print 'Removing docker image %s' % image
    dockerjob.remove_image(image)
Ejemplo n.º 2
0
    num_failures, resultset = jobset.run(jobs,
                                         newline_on_success=True,
                                         maxjobs=args.jobs)
    if num_failures:
        jobset.message('FAILED', 'Some tests failed', do_newline=True)
    else:
        jobset.message('SUCCESS', 'All tests passed', do_newline=True)

    report_utils.render_junit_xml_report(resultset, 'report.xml')

    for name, job in resultset.iteritems():
        if "http2" in name:
            job[0].http2results = aggregate_http2_results(job[0].message)

    report_utils.render_interop_html_report(
        set([str(l) for l in languages]), servers, _TEST_CASES,
        _AUTH_TEST_CASES, _HTTP2_TEST_CASES, resultset, num_failures,
        args.cloud_to_prod_auth or args.cloud_to_prod, args.http2_interop)

finally:
    # Check if servers are still running.
    for server, job in server_jobs.iteritems():
        if not job.is_running():
            print 'Server "%s" has exited prematurely.' % server

    dockerjob.finish_jobs([j for j in server_jobs.itervalues()])

    for image in docker_images.itervalues():
        print 'Removing docker image %s' % image
        dockerjob.remove_image(image)