55 lines
2 KiB
Python
55 lines
2 KiB
Python
# Copyright The IETF Trust 2009-2020, All Rights Reserved
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
|
from pyquery import PyQuery
|
|
|
|
from django.urls import reverse as urlreverse
|
|
|
|
import debug # pyflakes:ignore
|
|
|
|
from ietf.group.factories import GroupFactory
|
|
from ietf.mailinglists.factories import ListFactory
|
|
from ietf.utils.test_utils import TestCase
|
|
|
|
|
|
class MailingListTests(TestCase):
|
|
def test_groups(self):
|
|
url = urlreverse("ietf.mailinglists.views.groups")
|
|
|
|
# only those with an archive
|
|
group = GroupFactory()
|
|
r = self.client.get(url)
|
|
self.assertEqual(r.status_code, 200)
|
|
q = PyQuery(r.content)
|
|
self.assertEqual(len(q("#content a:contains(\"%s\")" % group.acronym)), 0)
|
|
|
|
# successful get
|
|
group = GroupFactory(list_archive = "https://example.com/foo")
|
|
r = self.client.get(url)
|
|
q = PyQuery(r.content)
|
|
self.assertEqual(len(q("#content a:contains(\"%s\")" % group.acronym)), 1)
|
|
|
|
|
|
def test_nonwg(self):
|
|
groups = list()
|
|
groups.append(GroupFactory(type_id='wg', acronym='mars', list_archive='https://ietf.org/mars'))
|
|
groups.append(GroupFactory(type_id='wg', acronym='ames', state_id='conclude', list_archive='https://ietf.org/ames'))
|
|
groups.append(GroupFactory(type_id='wg', acronym='newstuff', state_id='bof', list_archive='https://ietf.org/newstuff'))
|
|
groups.append(GroupFactory(type_id='rg', acronym='research', list_archive='https://irtf.org/research'))
|
|
lists = ListFactory.create_batch(7)
|
|
|
|
url = urlreverse("ietf.mailinglists.views.nonwg")
|
|
|
|
r = self.client.get(url)
|
|
for l in lists:
|
|
if l.advertised:
|
|
self.assertContains(r, l.name)
|
|
self.assertContains(r, l.description)
|
|
else:
|
|
self.assertNotContains(r, l.name, html=True)
|
|
self.assertNotContains(r, l.description, html=True)
|
|
|
|
for g in groups:
|
|
self.assertNotContains(r, g.acronym, html=True)
|