Additional tweaks to submission yang testing and the test runner
- Legacy-Id: 15870
This commit is contained in:
parent
2634e2143a
commit
0cc7f73d58
|
@ -9,7 +9,6 @@ import shutil
|
|||
import tempfile
|
||||
import StringIO
|
||||
|
||||
from collections import deque
|
||||
from django.conf import settings
|
||||
|
||||
import debug # pyflakes:ignore
|
||||
|
@ -19,8 +18,6 @@ from ietf.utils.models import VersionInfo
|
|||
from ietf.utils.pipe import pipe
|
||||
from ietf.utils.test_runner import set_coverage_checking
|
||||
|
||||
cmd_pipe_results = deque([], 4)
|
||||
|
||||
class DraftSubmissionChecker():
|
||||
name = ""
|
||||
|
||||
|
@ -74,8 +71,6 @@ class DraftIdnitsChecker(object):
|
|||
Error and warning list items are tuples:
|
||||
(line_number, line_text, message)
|
||||
"""
|
||||
global cmd_pipe_results
|
||||
|
||||
items = []
|
||||
errors = 0
|
||||
warnings = 0
|
||||
|
@ -85,7 +80,6 @@ class DraftIdnitsChecker(object):
|
|||
|
||||
cmd = "%s %s %s" % (settings.IDSUBMIT_IDNITS_BINARY, self.options, path)
|
||||
code, out, err = pipe(cmd)
|
||||
cmd_pipe_results.append((code, out, err))
|
||||
if code != 0 or out == "":
|
||||
message = "idnits error: %s:\n Error %s: %s" %( cmd, code, err)
|
||||
log(message)
|
||||
|
@ -210,7 +204,6 @@ class DraftYangChecker(object):
|
|||
cmd_version = VersionInfo.objects.get(command=command).version
|
||||
cmd = cmd_template.format(libs=modpath, model=path)
|
||||
code, out, err = pipe(cmd)
|
||||
cmd_pipe_results.append((code, out, err))
|
||||
if code > 0 or len(err.strip()) > 0 :
|
||||
error_lines = err.splitlines()
|
||||
assertion('len(error_lines) > 0')
|
||||
|
@ -242,10 +235,9 @@ class DraftYangChecker(object):
|
|||
cmd = cmd_template.format(model=path, rfclib=settings.SUBMIT_YANG_RFC_MODEL_DIR, tmplib=workdir,
|
||||
draftlib=settings.SUBMIT_YANG_DRAFT_MODEL_DIR, ianalib=settings.SUBMIT_YANG_IANA_MODEL_DIR, )
|
||||
code, out, err = pipe(cmd)
|
||||
cmd_pipe_results.append((code, out, err))
|
||||
if code > 0 or len(err.strip()) > 0:
|
||||
error_lines = err.splitlines()
|
||||
for line in error_lines:
|
||||
err_lines = err.splitlines()
|
||||
for line in err_lines:
|
||||
if line.strip():
|
||||
try:
|
||||
if 'err : ' in line:
|
||||
|
|
|
@ -31,8 +31,6 @@ from ietf.message.models import Message
|
|||
from ietf.name.models import FormalLanguageName
|
||||
from ietf.person.models import Person
|
||||
from ietf.person.factories import UserFactory, PersonFactory
|
||||
from ietf.submit.checkers import cmd_pipe_results
|
||||
|
||||
from ietf.submit.models import Submission, Preapproval
|
||||
from ietf.submit.mail import add_submission_email, process_response_email
|
||||
from ietf.utils.mail import outbox, empty_outbox
|
||||
|
@ -1039,7 +1037,6 @@ class SubmitTests(TestCase):
|
|||
q = PyQuery(r.content)
|
||||
#
|
||||
self.assertContains(r, u'The yang validation returned 1 error')
|
||||
self.assertIn('illegal keyword', cmd_pipe_results[-2][2])
|
||||
#
|
||||
m = q('#yang-validation-message').text()
|
||||
for command in ['xym', 'pyang', 'yanglint']:
|
||||
|
|
|
@ -80,6 +80,7 @@ old_destroy = None
|
|||
old_create = None
|
||||
|
||||
template_coverage_collection = None
|
||||
code_coverage_collection = None
|
||||
url_coverage_collection = None
|
||||
|
||||
|
||||
|
@ -223,15 +224,18 @@ def save_test_results(failures, test_labels):
|
|||
|
||||
def set_coverage_checking(flag=True):
|
||||
global template_coverage_collection
|
||||
global code_coverage_collection
|
||||
global url_coverage_collection
|
||||
if settings.SERVER_MODE == 'test':
|
||||
if flag:
|
||||
settings.TEST_CODE_COVERAGE_CHECKER.collector.resume()
|
||||
template_coverage_collection = True
|
||||
code_coverage_collection = True
|
||||
url_coverage_collection = True
|
||||
else:
|
||||
settings.TEST_CODE_COVERAGE_CHECKER.collector.pause()
|
||||
template_coverage_collection = False
|
||||
code_coverage_collection = False
|
||||
url_coverage_collection = False
|
||||
|
||||
class CoverageReporter(Reporter):
|
||||
|
@ -521,7 +525,6 @@ class IetfTestRunner(DiscoverRunner):
|
|||
settings.TEMPLATES[0]['OPTIONS']['loaders'] = ('ietf.utils.test_runner.TemplateCoverageLoader',) + settings.TEMPLATES[0]['OPTIONS']['loaders']
|
||||
|
||||
settings.MIDDLEWARE = ('ietf.utils.test_runner.record_urls_middleware',) + tuple(settings.MIDDLEWARE)
|
||||
url_coverage_collection = True
|
||||
|
||||
self.code_coverage_checker = settings.TEST_CODE_COVERAGE_CHECKER
|
||||
if not self.code_coverage_checker._started:
|
||||
|
@ -628,7 +631,7 @@ class IetfTestRunner(DiscoverRunner):
|
|||
return test_apps, test_paths
|
||||
|
||||
def run_tests(self, test_labels, extra_tests=[], **kwargs):
|
||||
global old_destroy, old_create, test_database_name, template_coverage_collection
|
||||
global old_destroy, old_create, test_database_name, template_coverage_collection, code_coverage_collection, url_coverage_collection
|
||||
from django.db import connection
|
||||
from ietf.doc.tests import TemplateTagTest
|
||||
|
||||
|
@ -652,6 +655,8 @@ class IetfTestRunner(DiscoverRunner):
|
|||
|
||||
if self.check_coverage:
|
||||
template_coverage_collection = True
|
||||
code_coverage_collection = True
|
||||
url_coverage_collection = True
|
||||
extra_tests += [
|
||||
CoverageTest(test_runner=self, methodName='interleaved_migrations_test'),
|
||||
CoverageTest(test_runner=self, methodName='url_coverage_test'),
|
||||
|
|
Loading…
Reference in a new issue