@@ -172,6 +172,42 @@ def test_agenda_extract_schedule_location(self):
172172 self .assertEqual (shown ['room' ], room .name )
173173 self .assertEqual (shown ['location' ], {'name' : room .floorplan .name , 'short' : room .floorplan .short })
174174
175+ def test_agenda_extract_schedule_names (self ):
176+ meeting = MeetingFactory (type_id = 'ietf' )
177+ named_timeslots = TimeSlotFactory .create_batch (2 , meeting = meeting , name = 'Timeslot Name' )
178+ unnamed_timeslots = TimeSlotFactory .create_batch (2 , meeting = meeting , name = '' )
179+ named_sessions = SessionFactory .create_batch (2 , meeting = meeting , name = 'Session Name' )
180+ unnamed_sessions = SessionFactory .create_batch (2 , meeting = meeting , name = '' )
181+ pk_with = {
182+ 'both named' : named_sessions [0 ].timeslotassignments .create (
183+ schedule = meeting .schedule ,
184+ timeslot = named_timeslots [0 ],
185+ ).pk ,
186+ 'session named' : named_sessions [1 ].timeslotassignments .create (
187+ schedule = meeting .schedule ,
188+ timeslot = unnamed_timeslots [0 ],
189+ ).pk ,
190+ 'timeslot named' : unnamed_sessions [0 ].timeslotassignments .create (
191+ schedule = meeting .schedule ,
192+ timeslot = named_timeslots [1 ],
193+ ).pk ,
194+ 'neither named' : unnamed_sessions [1 ].timeslotassignments .create (
195+ schedule = meeting .schedule ,
196+ timeslot = unnamed_timeslots [1 ],
197+ ).pk ,
198+ }
199+ processed = preprocess_assignments_for_agenda (meeting .schedule .assignments .all (), meeting )
200+ AgendaKeywordTagger (assignments = processed ).apply ()
201+ extracted = {item .pk : agenda_extract_schedule (item ) for item in processed }
202+ self .assertEqual (extracted [pk_with ['both named' ]]['name' ], 'Session Name' )
203+ self .assertEqual (extracted [pk_with ['both named' ]]['slotName' ], 'Timeslot Name' )
204+ self .assertEqual (extracted [pk_with ['session named' ]]['name' ], 'Session Name' )
205+ self .assertEqual (extracted [pk_with ['session named' ]]['slotName' ], '' )
206+ self .assertEqual (extracted [pk_with ['timeslot named' ]]['name' ], '' )
207+ self .assertEqual (extracted [pk_with ['timeslot named' ]]['slotName' ], 'Timeslot Name' )
208+ self .assertEqual (extracted [pk_with ['neither named' ]]['name' ], '' )
209+ self .assertEqual (extracted [pk_with ['neither named' ]]['slotName' ], '' )
210+
175211
176212class MeetingTests (BaseMeetingTestCase ):
177213 def test_meeting_agenda (self ):
0 commit comments