From 04421d3ec72fe70b35cc67bc4e07bdcaaa7e5adf Mon Sep 17 00:00:00 2001 From: Sangho Na Date: Wed, 2 Oct 2024 09:49:03 +1300 Subject: [PATCH 1/4] fix: fix wg anchor tags in areas page --- ietf/templates/group/active_areas.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ietf/templates/group/active_areas.html b/ietf/templates/group/active_areas.html index 63637889ea..8355d13bbc 100644 --- a/ietf/templates/group/active_areas.html +++ b/ietf/templates/group/active_areas.html @@ -65,7 +65,7 @@

Areas

{% for area in areas %}

{{ area.name }} - ({{ area.acronym|upper }}) + ({{ area.acronym|upper }})

{% if area.description %}

From 4b2e45ab296d66a50d8c2c44cb21522aa6952c73 Mon Sep 17 00:00:00 2001 From: Sangho Na Date: Wed, 2 Oct 2024 10:38:23 +1300 Subject: [PATCH 2/4] fix: fix wg anchor tags in IESG agenda page --- ietf/templates/iesg/agenda_charter.html | 2 +- ietf/templates/iesg/agenda_doc.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ietf/templates/iesg/agenda_charter.html b/ietf/templates/iesg/agenda_charter.html index 20bd23e06f..b4124914db 100644 --- a/ietf/templates/iesg/agenda_charter.html +++ b/ietf/templates/iesg/agenda_charter.html @@ -24,7 +24,7 @@

Area
- + {{ doc.group.parent.acronym|upper }} ({% person_link doc.ad %})
diff --git a/ietf/templates/iesg/agenda_doc.html b/ietf/templates/iesg/agenda_doc.html index ae78d96d60..87051fda26 100644 --- a/ietf/templates/iesg/agenda_doc.html +++ b/ietf/templates/iesg/agenda_doc.html @@ -37,7 +37,7 @@
Token
From a4345236ea1dbe320d9849ebe217fdb98561f286 Mon Sep 17 00:00:00 2001 From: Sangho Na Date: Wed, 2 Oct 2024 16:12:30 +1300 Subject: [PATCH 3/4] test: ensure wg anchor tags to be all uppercase --- ietf/group/tests_info.py | 6 ++++++ ietf/iesg/tests.py | 16 ++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/ietf/group/tests_info.py b/ietf/group/tests_info.py index 561f542f42..e92d4f0513 100644 --- a/ietf/group/tests_info.py +++ b/ietf/group/tests_info.py @@ -87,6 +87,12 @@ def test_active_groups(self): r = self.client.get(url) self.assertEqual(r.status_code, 200) self.assertContains(r, g.acronym) + if t == "area": + self.assertContains( + r, + f'({g.acronym.upper()})', + html=True, + ) url = urlreverse('ietf.group.views.active_groups', kwargs=dict()) r = self.client.get(url) diff --git a/ietf/iesg/tests.py b/ietf/iesg/tests.py index 8438cb44dd..85ca87f30f 100644 --- a/ietf/iesg/tests.py +++ b/ietf/iesg/tests.py @@ -412,6 +412,22 @@ def test_agenda(self): self.assertContains(r, d.name, msg_prefix="%s '%s' not in response" % (k, d.name)) self.assertContains(r, d.title, msg_prefix="%s '%s' title not in response" % (k, d.title)) + if d.type_id in ["charter", "draft"]: + if d.group.parent is None: + continue + if d.type_id == "charter": + self.assertContains( + r, + f'{d.group.parent.acronym.upper()}', + html=True, + ) + elif d.type_id == "draft": + self.assertContains( + r, + f'({d.group.parent.acronym.upper()})', + html=True, + ) + for i, mi in enumerate(self.mgmt_items, start=1): s = "6." + str(i) self.assertContains(r, s, msg_prefix="Section '%s' not in response" % s) From 82970f023507f8dbc6b40af9a4049a56350df918 Mon Sep 17 00:00:00 2001 From: Sangho Na Date: Thu, 3 Oct 2024 10:59:02 +1300 Subject: [PATCH 4/4] test: improve tests --- ietf/group/tests_info.py | 10 +++++----- ietf/iesg/tests.py | 18 ++++++++---------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/ietf/group/tests_info.py b/ietf/group/tests_info.py index e92d4f0513..95fe9aa2e5 100644 --- a/ietf/group/tests_info.py +++ b/ietf/group/tests_info.py @@ -88,11 +88,11 @@ def test_active_groups(self): self.assertEqual(r.status_code, 200) self.assertContains(r, g.acronym) if t == "area": - self.assertContains( - r, - f'({g.acronym.upper()})', - html=True, - ) + q = PyQuery(r.content) + wg_url = urlreverse("ietf.group.views.active_groups", kwargs=dict(group_type="wg")) + href = f"{wg_url}#{g.acronym.upper()}" + self.assertEqual(q(f"h2#id-{g.acronym} a").attr("href"), href) + self.assertEqual(q(f'h2#id-{g.acronym} a[href="{href}"]').text(), f"({g.acronym.upper()})") url = urlreverse('ietf.group.views.active_groups', kwargs=dict()) r = self.client.get(url) diff --git a/ietf/iesg/tests.py b/ietf/iesg/tests.py index 85ca87f30f..42e838ebdf 100644 --- a/ietf/iesg/tests.py +++ b/ietf/iesg/tests.py @@ -404,6 +404,8 @@ def test_agenda(self): self.assertContains(r, action_items.text) + q = PyQuery(r.content) + for k, d in self.telechat_docs.items(): if d.type_id == "charter": self.assertContains(r, d.group.name, msg_prefix="%s '%s' not in response" % (k, d.group.name)) @@ -415,18 +417,14 @@ def test_agenda(self): if d.type_id in ["charter", "draft"]: if d.group.parent is None: continue + wg_url = urlreverse("ietf.group.views.active_groups", kwargs=dict(group_type="wg")) + href = f"{wg_url}#{d.group.parent.acronym.upper()}" + texts = [elem.text.strip() for elem in q(f'a[href="{href}"]')] + self.assertGreater(len(texts), 0) if d.type_id == "charter": - self.assertContains( - r, - f'{d.group.parent.acronym.upper()}', - html=True, - ) + self.assertTrue(any(t == d.group.parent.acronym.upper() for t in texts)) elif d.type_id == "draft": - self.assertContains( - r, - f'({d.group.parent.acronym.upper()})', - html=True, - ) + self.assertTrue(any(t == f"({d.group.parent.acronym.upper()})" for t in texts)) for i, mi in enumerate(self.mgmt_items, start=1): s = "6." + str(i)