def _add_announcement_and_translation(self, locale, is_draft=False): announcement = announcements.AnnouncementEntity() announcement.title = 'Test Announcement' announcement.html = 'Announcement Content' announcement.is_draft = is_draft announcement.put() key = i18n_dashboard.ResourceBundleKey( announcements.ResourceHandlerAnnouncement.TYPE, announcement.key().id(), locale) dto = i18n_dashboard.ResourceBundleDTO( str(key), { 'title': { 'type': 'string', 'source_value': '', 'data': [{ 'source_value': 'Test Announcement', 'target_value': 'TEST ANNOUNCEMENT' }] }, 'html': { 'type': 'string', 'source_value': '', 'data': [{ 'source_value': 'Announcement Content', 'target_value': 'ANNOUNCEMENT CONTENT' }] }, }) i18n_dashboard.ResourceBundleDAO.save(dto) return announcement
def test_youtube(self): sites.setup_courses('course:/test::ns_test, course:/:/') default_namespace = namespace_manager.get_namespace() try: namespace_manager.set_namespace('ns_test') course = courses.Course(None, app_context=sites.get_all_courses()[0]) unit = course.add_unit() unit.now_available = True lesson_a = course.add_lesson(unit) lesson_a.video = 'portal' lesson_a.now_available = True lesson_b = course.add_lesson(unit) lesson_b.objectives = '<gcb-youtube videoid="glados">' lesson_b.now_available = True course.update_unit(unit) course.save() entity = announcements.AnnouncementEntity() entity.html = '<gcb-youtube videoid="aperature">' entity.title = 'Sample Announcement' entity.date = datetime.datetime.now().date() entity.is_draft = False entity.put() self.index_test_course() response = self.get('/test/search?query=apple') self.assertIn('gcb-search-result', response.body) self.assertIn('start=3.14', response.body) self.assertIn('v=portal', response.body) self.assertIn('v=glados', response.body) self.assertIn('v=aperature', response.body) self.assertIn('lemon', response.body) self.assertIn('Medicus Quis', response.body) self.assertIn('- YouTube', response.body) self.assertIn('http://thumbnail.null', response.body) # Test to make sure empty notes field doesn't cause a urlfetch response = self.get('/test/search?query=cogito') self.assertNotIn('gcb-search-result', response.body) finally: namespace_manager.set_namespace(default_namespace)