diff --git a/ietf/submit/tests.py b/ietf/submit/tests.py index 64657d539..97ecb47cf 100644 --- a/ietf/submit/tests.py +++ b/ietf/submit/tests.py @@ -24,6 +24,7 @@ from ietf.person.factories import UserFactory, PersonFactory 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 +from ietf.utils.models import VersionInfo from ietf.utils.test_data import make_test_data from ietf.utils.test_utils import login_testing_unauthorized, unicontent, TestCase @@ -273,6 +274,15 @@ class SubmitTests(TestCase): self.assertTrue("ames-chairs@" in outbox[-1]["To"].lower()) self.assertTrue("mars-chairs@" in outbox[-1]["To"].lower()) + # fetch the document page + url = urlreverse('ietf.doc.views_doc.document_main', kwargs={'name':name}) + r = self.client.get(url) + self.assertContains(r, name) + self.assertContains(r, 'Active Internet-Draft') + self.assertContains(r, 'mars WG') + self.assertContains(r, 'Yang Validation') + self.assertContains(r, 'WG Document') + def test_submit_new_wg_txt(self): self.submit_new_wg(["txt"]) @@ -950,6 +960,38 @@ class SubmitTests(TestCase): self.assertIn('The idnits check returned 1 error', m) + def test_submit_invalid_yang(self): + make_test_data() + + name = "draft-yang-testing-invalid" + rev = "00" + group = None + + # get + url = urlreverse('ietf.submit.views.upload_submission') + r = self.client.get(url) + self.assertEqual(r.status_code, 200) + q = PyQuery(r.content) + + # submit + files = {"txt": submission_file(name, rev, group, "txt", "test_submission_invalid_yang.txt") } + + r = self.client.post(url, files) + self.assertEqual(r.status_code, 302) + status_url = r["Location"] + r = self.client.get(status_url) + q = PyQuery(r.content) + # + self.assertContains(r, u'The yang validation returned 1 error') + # + m = q('#yang-validation-message').text() + for command in ['xym', 'pyang', 'yanglint']: + version = VersionInfo.objects.get(command=command).version + self.assertIn(version, m) + self.assertIn("draft-yang-testing-invalid-00.txt", m) + self.assertIn("error: syntax error: illegal keyword: ;", m) + self.assertIn("No validation errors", m) + class ApprovalsTestCase(TestCase): def test_approvals(self): diff --git a/ietf/templates/submit/submission_status.html b/ietf/templates/submit/submission_status.html index 7a39804f2..a4b9d5a8b 100644 --- a/ietf/templates/submit/submission_status.html +++ b/ietf/templates/submit/submission_status.html @@ -67,9 +67,9 @@