Skip to content

Commit 207ea51

Browse files
committed
Added a test case for invalid yang in a draft submission.
- Legacy-Id: 13633
1 parent 7205512 commit 207ea51

2 files changed

Lines changed: 44 additions & 2 deletions

File tree

ietf/submit/tests.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
from ietf.submit.models import Submission, Preapproval
2525
from ietf.submit.mail import add_submission_email, process_response_email
2626
from ietf.utils.mail import outbox, empty_outbox
27+
from ietf.utils.models import VersionInfo
2728
from ietf.utils.test_data import make_test_data
2829
from ietf.utils.test_utils import login_testing_unauthorized, unicontent, TestCase
2930

@@ -273,6 +274,15 @@ def submit_new_wg(self, formats):
273274
self.assertTrue("ames-chairs@" in outbox[-1]["To"].lower())
274275
self.assertTrue("mars-chairs@" in outbox[-1]["To"].lower())
275276

277+
# fetch the document page
278+
url = urlreverse('ietf.doc.views_doc.document_main', kwargs={'name':name})
279+
r = self.client.get(url)
280+
self.assertContains(r, name)
281+
self.assertContains(r, 'Active Internet-Draft')
282+
self.assertContains(r, 'mars WG')
283+
self.assertContains(r, 'Yang Validation')
284+
self.assertContains(r, 'WG Document')
285+
276286
def test_submit_new_wg_txt(self):
277287
self.submit_new_wg(["txt"])
278288

@@ -950,6 +960,38 @@ def test_submit_nonascii_name(self):
950960

951961
self.assertIn('The idnits check returned 1 error', m)
952962

963+
def test_submit_invalid_yang(self):
964+
make_test_data()
965+
966+
name = "draft-yang-testing-invalid"
967+
rev = "00"
968+
group = None
969+
970+
# get
971+
url = urlreverse('ietf.submit.views.upload_submission')
972+
r = self.client.get(url)
973+
self.assertEqual(r.status_code, 200)
974+
q = PyQuery(r.content)
975+
976+
# submit
977+
files = {"txt": submission_file(name, rev, group, "txt", "test_submission_invalid_yang.txt") }
978+
979+
r = self.client.post(url, files)
980+
self.assertEqual(r.status_code, 302)
981+
status_url = r["Location"]
982+
r = self.client.get(status_url)
983+
q = PyQuery(r.content)
984+
#
985+
self.assertContains(r, u'The yang validation returned 1 error')
986+
#
987+
m = q('#yang-validation-message').text()
988+
for command in ['xym', 'pyang', 'yanglint']:
989+
version = VersionInfo.objects.get(command=command).version
990+
self.assertIn(version, m)
991+
self.assertIn("draft-yang-testing-invalid-00.txt", m)
992+
self.assertIn("error: syntax error: illegal keyword: ;", m)
993+
self.assertIn("No validation errors", m)
994+
953995

954996
class ApprovalsTestCase(TestCase):
955997
def test_approvals(self):

ietf/templates/submit/submission_status.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ <h2>Submission checks</h2>
6767
<div class="modal-content">
6868
<div class="modal-header">
6969
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
70-
<h4 class="modal-title" id="nitslabel">{{ check.checker|title }} for {{ submission.name }}-{{ submission.rev }}</h4>
70+
<h4 class="modal-title" id="{{check.checker|slugify}}-label">{{ check.checker|title }} for {{ submission.name }}-{{ submission.rev }}</h4>
7171
</div>
72-
<div class="modal-body">
72+
<div class="modal-body" id="{{check.checker|slugify}}-message">
7373
<pre>{{ check.message }}</pre>
7474
</div>
7575
<div class="modal-footer">

0 commit comments

Comments
 (0)