Merge pull request #20104 from jolyonb/incr-179

INCR-179 Migrating openedx/features/journals
This commit is contained in:
Jeremy Bowman
2019-03-29 18:15:56 -07:00
committed by GitHub
10 changed files with 45 additions and 30 deletions

View File

@@ -1,22 +1,23 @@
"""
APIs providing support for Journals functionality.
"""
from urlparse import urljoin, urlsplit, urlunsplit
import logging
from __future__ import absolute_import
import hashlib
import logging
import six
from six.moves.urllib.parse import urljoin, urlsplit, urlunsplit # pylint: disable=import-error
from django.conf import settings
from django.contrib.auth import get_user_model
from django.core.cache import cache
from django.core.exceptions import ObjectDoesNotExist
from edx_rest_api_client.client import EdxRestApiClient
from slumber.exceptions import HttpClientError, HttpServerError
from openedx.core.djangoapps.catalog.models import CatalogIntegration
from openedx.core.djangoapps.oauth_dispatch.jwt import create_jwt_for_user
from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers
from openedx.core.djangoapps.waffle_utils import WaffleSwitchNamespace
from slumber.exceptions import HttpClientError, HttpServerError
LOGGER = logging.getLogger("edx.journals")
JOURNALS_CACHE_TIMEOUT = 3600 # Value is in seconds

View File

@@ -1,8 +1,11 @@
"""
Journals Application Configuration
"""
from __future__ import absolute_import
from django.apps import AppConfig
from openedx.core.djangoapps.plugins.constants import ProjectType, SettingsType, PluginURLs, PluginSettings
from openedx.core.djangoapps.plugins.constants import PluginSettings, PluginURLs, ProjectType, SettingsType
class JournalsConfig(AppConfig):

View File

@@ -2,21 +2,20 @@
Test cases for journal page views.
"""
import uuid
import mock
from __future__ import absolute_import
import uuid
import mock
from django.conf import settings
from django.core.urlresolvers import reverse
from django.http import HttpResponse
from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
from openedx.core.djangoapps.site_configuration.tests.mixins import SiteMixin
from openedx.features.journals.tests.utils import (
get_mocked_journal_access,
override_switch
)
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
from openedx.features.journals.api import JOURNAL_INTEGRATION
from openedx.features.journals.tests.utils import get_mocked_journal_access, override_switch
@mock.patch.dict(settings.FEATURES, {"JOURNALS_ENABLED": True})

View File

@@ -1,13 +1,14 @@
""" Tests for journals learner dashboard views. """
import mock
from __future__ import absolute_import
import mock
from django.conf import settings
from django.core.urlresolvers import reverse
from lms.djangoapps.courseware.tests.helpers import LoginEnrollmentTestCase
from openedx.features.journals.tests.utils import get_mocked_journal_access, override_switch
from openedx.features.journals.api import JOURNAL_INTEGRATION
from openedx.features.journals.tests.utils import get_mocked_journal_access, override_switch
@mock.patch.dict(settings.FEATURES, {"JOURNALS_ENABLED": True})

View File

@@ -1,18 +1,22 @@
""" Tests for journals marketing views. """
import uuid
import mock
from __future__ import absolute_import
import uuid
import mock
from django.conf import settings
from django.core.urlresolvers import reverse
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
from openedx.core.djangoapps.site_configuration.tests.mixins import SiteMixin
from openedx.features.journals.tests.utils import (get_mocked_journals,
get_mocked_journal_bundles,
get_mocked_pricing_data,
override_switch)
from openedx.core.djangolib.testing.utils import CacheIsolationTestCase
from openedx.features.journals.api import JOURNAL_INTEGRATION
from openedx.features.journals.tests.utils import (
get_mocked_journal_bundles,
get_mocked_journals,
get_mocked_pricing_data,
override_switch
)
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase

View File

@@ -1,6 +1,9 @@
""" Returns the dummy data for journals endpoint of discovery."""
from __future__ import absolute_import
import uuid
from functools import wraps
from openedx.features.journals.api import WAFFLE_SWITCHES

View File

@@ -2,12 +2,14 @@
Defines URLs for course bookmarks.
"""
from __future__ import absolute_import
from django.conf import settings
from django.conf.urls import url
from openedx.features.journals.views.marketing import bundle_about
from openedx.features.journals.views import learner_dashboard
from openedx.features.journals.views.journal_xblock import render_xblock_by_journal_access
from openedx.features.journals.views.marketing import bundle_about
urlpatterns = [
url(r'^bundles/{}/about'.format(r'(?P<bundle_uuid>[0-9a-f-]+)',),

View File

@@ -1,13 +1,15 @@
"""
View for journal page
"""
from __future__ import absolute_import
import datetime
from django.core.cache import cache
from django.core.exceptions import PermissionDenied
from opaque_keys.edx.keys import UsageKey
from lms.djangoapps.courseware.views.views import render_xblock
from opaque_keys.edx.keys import UsageKey
from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers
from openedx.features.journals.api import fetch_journal_access

View File

@@ -1,16 +1,14 @@
""" Journal Tab of Learner Dashboard views """
from datetime import datetime, time
from __future__ import absolute_import
import logging
from datetime import datetime, time
from django.http import Http404
from edxmako.shortcuts import render_to_response
from openedx.core.djangoapps.programs.models import ProgramsApiConfig
from openedx.features.journals.api import (
fetch_journal_access,
journals_enabled,
)
from openedx.features.journals.api import fetch_journal_access, journals_enabled
logger = logging.getLogger(__name__)

View File

@@ -1,13 +1,15 @@
""" Journal bundle about page's view """
from __future__ import absolute_import
from django.conf import settings
from django.contrib.auth.models import User
from django.http import Http404
from edxmako.shortcuts import render_to_response
from lms.djangoapps.commerce.utils import EcommerceService
from openedx.core.djangoapps.catalog.models import CatalogIntegration
from openedx.core.djangoapps.commerce.utils import ecommerce_api_client
from openedx.features.journals.api import get_journal_bundles, get_journals_root_url
from lms.djangoapps.commerce.utils import EcommerceService
def bundle_about(request, bundle_uuid):