11import datetime
2+ from pyquery import PyQuery
23
34from django .urls import reverse
45
6+ from ietf .doc .models import Document , State , BallotDocEvent , BallotType
7+ from ietf .doc .utils import update_telechat
58from ietf .utils .test_utils import TestCase
69from ietf .iesg .models import TelechatDate
7-
10+ from ietf .person .models import Person
11+ from ietf .secr .telechat .views import get_next_telechat_date
12+ from ietf .utils .test_data import make_test_data
813
914SECR_USER = 'secretary'
1015
@@ -30,3 +35,43 @@ def test_doc(self):
3035 response = self .client .get (url )
3136 self .assertEqual (response .status_code , 200 )
3237
38+ def test_doc_detail_draft (self ):
39+ draft = make_test_data ()
40+ d = get_next_telechat_date ()
41+ date = d .strftime ('%Y-%m-%d' )
42+ by = Person .objects .get (name = "(System)" )
43+ update_telechat (None , draft , by , date )
44+ url = reverse ('ietf.secr.telechat.views.doc_detail' , kwargs = {'date' :date , 'name' :draft .name })
45+ self .client .login (username = "secretary" , password = "secretary+password" )
46+ response = self .client .get (url )
47+ self .assertEqual (response .status_code , 200 )
48+ q = PyQuery (response .content )
49+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Yes')" ).length ,1 )
50+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('No Objection')" ).length ,1 )
51+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Discuss')" ).length ,1 )
52+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Abstain')" ).length ,1 )
53+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Recuse')" ).length ,1 )
54+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('No Record')" ).length ,1 )
55+
56+ def test_doc_detail_charter (self ):
57+ make_test_data ()
58+ by = Person .objects .get (name = "(System)" )
59+ charter = Document .objects .filter (type = 'charter' ).first ()
60+ charter .set_state (State .objects .get (used = True , slug = "intrev" , type = "charter" ))
61+ last_week = datetime .date .today ()- datetime .timedelta (days = 7 )
62+ BallotDocEvent .objects .create (type = 'created_ballot' ,by = by ,doc = charter , rev = charter .rev ,
63+ ballot_type = BallotType .objects .get (doc_type = charter .type ,slug = 'r-extrev' ),
64+ time = last_week )
65+ d = get_next_telechat_date ()
66+ date = d .strftime ('%Y-%m-%d' )
67+ update_telechat (None , charter , by , date )
68+ url = reverse ('ietf.secr.telechat.views.doc_detail' , kwargs = {'date' :date , 'name' :charter .name })
69+ self .client .login (username = "secretary" , password = "secretary+password" )
70+ response = self .client .get (url )
71+ self .assertEqual (response .status_code , 200 )
72+ q = PyQuery (response .content )
73+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Yes')" ).length ,1 )
74+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('No Objection')" ).length ,1 )
75+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Block')" ).length ,1 )
76+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('Abstain')" ).length ,1 )
77+ self .assertEqual (q ("#telechat-positions-table" ).find ("th:contains('No Record')" ).length ,1 )
0 commit comments