コード例 #1
0
    def test_language_code_filter(self):
        """Note that both EXP_ID_1 is in Spanish and EXP_ID_2 is in English."""
        activity_services.update_featured_activity_references([
            activity_domain.ActivityReference(
                constants.ACTIVITY_TYPE_EXPLORATION, self.EXP_ID_1),
            activity_domain.ActivityReference(
                constants.ACTIVITY_TYPE_EXPLORATION, self.EXP_ID_2)
        ])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts(
                [constants.DEFAULT_LANGUAGE_CODE]))
        self.assertEqual(len(featured_activity_summaries), 1)
        self.assertDictContainsSubset(
            {
                'language_code': constants.DEFAULT_LANGUAGE_CODE,
                'id': self.EXP_ID_2,
            }, featured_activity_summaries[0])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts(
                [self.LANGUAGE_CODE_ES]))
        self.assertEqual(len(featured_activity_summaries), 1)
        self.assertDictContainsSubset(
            {
                'language_code': self.LANGUAGE_CODE_ES,
                'id': self.EXP_ID_1,
            }, featured_activity_summaries[0])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts(
                [constants.DEFAULT_LANGUAGE_CODE, self.LANGUAGE_CODE_ES]))
        self.assertEqual(len(featured_activity_summaries), 2)
        self.assertDictContainsSubset(
            {
                'language_code': self.LANGUAGE_CODE_ES,
                'id': self.EXP_ID_1,
            }, featured_activity_summaries[0])
        self.assertDictContainsSubset(
            {
                'language_code': constants.DEFAULT_LANGUAGE_CODE,
                'id': self.EXP_ID_2,
            }, featured_activity_summaries[1])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts(
                ['nonexistent_language_code']))
        self.assertEqual(len(featured_activity_summaries), 0)

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([]))
        self.assertEqual(len(featured_activity_summaries), 0)
コード例 #2
0
    def test_language_code_filter(self):
        """Note that both EXP_ID_1 is in Spanish and EXP_ID_2 is in English."""
        activity_services.update_featured_activity_references([
            activity_domain.ActivityReference(
                feconf.ACTIVITY_TYPE_EXPLORATION, self.EXP_ID_1),
            activity_domain.ActivityReference(
                feconf.ACTIVITY_TYPE_EXPLORATION, self.EXP_ID_2)
        ])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([
                feconf.DEFAULT_LANGUAGE_CODE]))
        self.assertEqual(len(featured_activity_summaries), 1)
        self.assertDictContainsSubset({
            'language_code': feconf.DEFAULT_LANGUAGE_CODE,
            'id': self.EXP_ID_2,
        }, featured_activity_summaries[0])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([
                self.LANGUAGE_CODE_ES]))
        self.assertEqual(len(featured_activity_summaries), 1)
        self.assertDictContainsSubset({
            'language_code': self.LANGUAGE_CODE_ES,
            'id': self.EXP_ID_1,
        }, featured_activity_summaries[0])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([
                feconf.DEFAULT_LANGUAGE_CODE, self.LANGUAGE_CODE_ES]))
        self.assertEqual(len(featured_activity_summaries), 2)
        self.assertDictContainsSubset({
            'language_code': self.LANGUAGE_CODE_ES,
            'id': self.EXP_ID_1,
        }, featured_activity_summaries[0])
        self.assertDictContainsSubset({
            'language_code': feconf.DEFAULT_LANGUAGE_CODE,
            'id': self.EXP_ID_2,
        }, featured_activity_summaries[1])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([
                'nonexistent_language_code']))
        self.assertEqual(len(featured_activity_summaries), 0)

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([]))
        self.assertEqual(len(featured_activity_summaries), 0)
コード例 #3
0
    def test_for_featured_explorations(self):
        """Note that both EXP_ID_1 and EXP_ID_2 are public. However, only
        EXP_ID_2 is featured, so the call to get_featured_explorations() should
        only return [EXP_ID_2].
        """
        activity_services.update_featured_activity_references([
            activity_domain.ActivityReference(
                constants.ACTIVITY_TYPE_EXPLORATION, self.EXP_ID_2)
        ])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([
                constants.DEFAULT_LANGUAGE_CODE]))
        self.assertEqual(len(featured_activity_summaries), 1)
        self.assertDictContainsSubset({
            'status': 'public',
            'thumbnail_bg_color': '#a33f40',
            'community_owned': False,
            'tags': [],
            'thumbnail_icon_url': '/subjects/Lightbulb.svg',
            'language_code': constants.DEFAULT_LANGUAGE_CODE,
            'id': self.EXP_ID_2,
            'category': 'A category',
            'ratings': feconf.get_empty_ratings(),
            'title': 'A title',
            'num_views': 0,
            'objective': 'An objective'
        }, featured_activity_summaries[0])
コード例 #4
0
    def test_for_featured_explorations(self):
        """Note that both EXP_ID_1 and EXP_ID_2 are public. However, only
        EXP_ID_2 is featured, so the call to get_featured_explorations() should
        only return [EXP_ID_2].
        """
        activity_services.update_featured_activity_references([
            activity_domain.ActivityReference(
                feconf.ACTIVITY_TYPE_EXPLORATION, self.EXP_ID_2)
        ])

        featured_activity_summaries = (
            summary_services.get_featured_activity_summary_dicts([
                feconf.DEFAULT_LANGUAGE_CODE]))
        self.assertEqual(len(featured_activity_summaries), 1)
        self.assertDictContainsSubset({
            'status': 'public',
            'thumbnail_bg_color': '#a33f40',
            'community_owned': False,
            'tags': [],
            'thumbnail_icon_url': self.get_static_asset_url(
                '/images/subjects/Lightbulb.svg'),
            'language_code': feconf.DEFAULT_LANGUAGE_CODE,
            'id': self.EXP_ID_2,
            'category': 'A category',
            'ratings': feconf.get_empty_ratings(),
            'title': 'A title',
            'num_views': 0,
            'objective': 'An objective'
        }, featured_activity_summaries[0])
コード例 #5
0
ファイル: library.py プロジェクト: hemanthsavasere/oppia
    def get(self):
        """Handles GET requests."""
        # TODO(sll): Support index pages for other language codes.
        summary_dicts_by_category = summary_services.get_library_groups([
            feconf.DEFAULT_LANGUAGE_CODE])
        recently_published_summary_dicts = (
            summary_services.get_recently_published_exp_summary_dicts(
                feconf.RECENTLY_PUBLISHED_QUERY_LIMIT_FOR_LIBRARY_PAGE))
        top_rated_activity_summary_dicts = (
            summary_services.get_top_rated_exploration_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE],
                feconf.NUMBER_OF_TOP_RATED_EXPLORATIONS_FOR_LIBRARY_PAGE))
        featured_activity_summary_dicts = (
            summary_services.get_featured_activity_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE]))

        preferred_language_codes = [feconf.DEFAULT_LANGUAGE_CODE]
        if self.user_id:
            user_settings = user_services.get_user_settings(self.user_id)
            preferred_language_codes = user_settings.preferred_language_codes

        if recently_published_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': recently_published_summary_dicts,
                'categories': [],
                'header_i18n_id': feconf.LIBRARY_CATEGORY_RECENTLY_PUBLISHED,
                'has_full_results_page': True,
                'full_results_url': feconf.LIBRARY_RECENTLY_PUBLISHED_URL,
                'protractor_id': 'recently-published',
            })
        if top_rated_activity_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': top_rated_activity_summary_dicts,
                'categories': [],
                'header_i18n_id': (
                    feconf.LIBRARY_CATEGORY_TOP_RATED_EXPLORATIONS),
                'has_full_results_page': True,
                'full_results_url': feconf.LIBRARY_TOP_RATED_URL,
                'protractor_id': 'top-rated',
            })
        if featured_activity_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': featured_activity_summary_dicts,
                'categories': [],
                'header_i18n_id': feconf.LIBRARY_CATEGORY_FEATURED_ACTIVITIES,
                'has_full_results_page': False,
                'full_results_url': None,
            })

        self.values.update({
            'activity_summary_dicts_by_category': (
                summary_dicts_by_category),
            'preferred_language_codes': preferred_language_codes,
        })
        self.render_json(self.values)
コード例 #6
0
    def get(self):
        """Handles GET requests."""
        # TODO(sll): Support index pages for other language codes.
        summary_dicts_by_category = summary_services.get_library_groups([
            feconf.DEFAULT_LANGUAGE_CODE])
        recently_published_summary_dicts = (
            summary_services.get_recently_published_exp_summary_dicts(
                feconf.RECENTLY_PUBLISHED_QUERY_LIMIT_FOR_LIBRARY_PAGE))
        top_rated_activity_summary_dicts = (
            summary_services.get_top_rated_exploration_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE],
                feconf.NUMBER_OF_TOP_RATED_EXPLORATIONS_FOR_LIBRARY_PAGE))
        featured_activity_summary_dicts = (
            summary_services.get_featured_activity_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE]))

        preferred_language_codes = [feconf.DEFAULT_LANGUAGE_CODE]
        if self.user_id:
            user_settings = user_services.get_user_settings(self.user_id)
            preferred_language_codes = user_settings.preferred_language_codes

        if recently_published_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': recently_published_summary_dicts,
                'categories': [],
                'header_i18n_id': feconf.LIBRARY_CATEGORY_RECENTLY_PUBLISHED,
                'has_full_results_page': True,
                'full_results_url': feconf.LIBRARY_RECENTLY_PUBLISHED_URL,
                'protractor_id': 'recently-published',
            })
        if top_rated_activity_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': top_rated_activity_summary_dicts,
                'categories': [],
                'header_i18n_id': (
                    feconf.LIBRARY_CATEGORY_TOP_RATED_EXPLORATIONS),
                'has_full_results_page': True,
                'full_results_url': feconf.LIBRARY_TOP_RATED_URL,
                'protractor_id': 'top-rated',
            })
        if featured_activity_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': featured_activity_summary_dicts,
                'categories': [],
                'header_i18n_id': feconf.LIBRARY_CATEGORY_FEATURED_ACTIVITIES,
                'has_full_results_page': False,
                'full_results_url': None,
            })

        self.values.update({
            'activity_summary_dicts_by_category': (
                summary_dicts_by_category),
            'preferred_language_codes': preferred_language_codes,
        })
        self.render_json(self.values)
コード例 #7
0
    def get(self):
        """Handles GET requests."""
        # TODO(sll): Support index pages for other language codes.
        summary_dicts_by_category = summary_services.get_library_groups(
            [feconf.DEFAULT_LANGUAGE_CODE])
        recently_published_summary_dicts = (
            summary_services.get_recently_published_exploration_summary_dicts(
            ))
        top_rated_activity_summary_dicts = (
            summary_services.get_top_rated_exploration_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE]))
        featured_activity_summary_dicts = (
            summary_services.get_featured_activity_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE]))

        preferred_language_codes = [feconf.DEFAULT_LANGUAGE_CODE]
        if self.user_id:
            user_settings = user_services.get_user_settings(self.user_id)
            preferred_language_codes = user_settings.preferred_language_codes

        if recently_published_summary_dicts:
            summary_dicts_by_category.insert(
                0, {
                    'activity_summary_dicts': recently_published_summary_dicts,
                    'categories': [],
                    'header': feconf.LIBRARY_CATEGORY_RECENTLY_PUBLISHED,
                })
        if top_rated_activity_summary_dicts:
            summary_dicts_by_category.insert(
                0, {
                    'activity_summary_dicts': top_rated_activity_summary_dicts,
                    'categories': [],
                    'header': feconf.LIBRARY_CATEGORY_TOP_RATED_EXPLORATIONS,
                })
        if featured_activity_summary_dicts:
            summary_dicts_by_category.insert(
                0, {
                    'activity_summary_dicts': featured_activity_summary_dicts,
                    'categories': [],
                    'header': feconf.LIBRARY_CATEGORY_FEATURED_ACTIVITIES,
                })

        self.values.update({
            'activity_summary_dicts_by_category': (summary_dicts_by_category),
            'preferred_language_codes':
            preferred_language_codes,
        })
        self.render_json(self.values)
コード例 #8
0
ファイル: library.py プロジェクト: abhijit5893/oppia
    def get(self):
        """Handles GET requests."""
        # TODO(sll): Support index pages for other language codes.
        summary_dicts_by_category = summary_services.get_library_groups([
            feconf.DEFAULT_LANGUAGE_CODE])
        recently_published_summary_dicts = (
            summary_services.get_recently_published_exploration_summary_dicts())
        top_rated_activity_summary_dicts = (
            summary_services.get_top_rated_exploration_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE]))
        featured_activity_summary_dicts = (
            summary_services.get_featured_activity_summary_dicts(
                [feconf.DEFAULT_LANGUAGE_CODE]))

        preferred_language_codes = [feconf.DEFAULT_LANGUAGE_CODE]
        if self.user_id:
            user_settings = user_services.get_user_settings(self.user_id)
            preferred_language_codes = user_settings.preferred_language_codes

        if recently_published_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': recently_published_summary_dicts,
                'categories': [],
                'header': feconf.LIBRARY_CATEGORY_RECENTLY_PUBLISHED,
            })
        if top_rated_activity_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': top_rated_activity_summary_dicts,
                'categories': [],
                'header': feconf.LIBRARY_CATEGORY_TOP_RATED_EXPLORATIONS,
            })
        if featured_activity_summary_dicts:
            summary_dicts_by_category.insert(0, {
                'activity_summary_dicts': featured_activity_summary_dicts,
                'categories': [],
                'header': feconf.LIBRARY_CATEGORY_FEATURED_ACTIVITIES,
            })

        self.values.update({
            'activity_summary_dicts_by_category': (
                summary_dicts_by_category),
            'preferred_language_codes': preferred_language_codes,
        })
        self.render_json(self.values)