Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
b3def093
Commit
b3def093
authored
Sep 16, 2016
by
Saleem Latif
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
check settings.DEFAULT_SITE_THEME to be not None before applying default theme
parent
dd876d8b
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
46 additions
and
1 deletions
+46
-1
openedx/core/djangoapps/theming/middleware.py
+3
-1
openedx/core/djangoapps/theming/tests/test_middleware.py
+43
-0
No files found.
openedx/core/djangoapps/theming/middleware.py
View file @
b3def093
...
...
@@ -18,5 +18,7 @@ class CurrentSiteThemeMiddleware(object):
"""
fetch Site Theme for the current site and add it to the request object.
"""
default_theme
=
SiteTheme
(
site
=
request
.
site
,
theme_dir_name
=
settings
.
DEFAULT_SITE_THEME
)
default_theme
=
None
if
settings
.
DEFAULT_SITE_THEME
:
default_theme
=
SiteTheme
(
site
=
request
.
site
,
theme_dir_name
=
settings
.
DEFAULT_SITE_THEME
)
request
.
site_theme
=
SiteTheme
.
get_theme
(
request
.
site
,
default
=
default_theme
)
openedx/core/djangoapps/theming/tests/test_middleware.py
0 → 100644
View file @
b3def093
"""
Tests for middleware for comprehensive themes.
"""
from
mock
import
Mock
from
django.test
import
TestCase
,
override_settings
from
django.contrib.sites.models
import
Site
from
openedx.core.djangoapps.theming.middleware
import
CurrentSiteThemeMiddleware
class
TestCurrentSiteThemeMiddlewareLMS
(
TestCase
):
"""
Test theming middleware.
"""
def
setUp
(
self
):
"""
Initialize middleware and related objects
"""
super
(
TestCurrentSiteThemeMiddlewareLMS
,
self
)
.
setUp
()
self
.
site_theme_middleware
=
CurrentSiteThemeMiddleware
()
self
.
request
=
Mock
()
self
.
request
.
site
,
__
=
Site
.
objects
.
get_or_create
(
domain
=
"test"
,
name
=
"test"
)
self
.
request
.
session
=
{}
@override_settings
(
DEFAULT_SITE_THEME
=
"test-theme"
)
def
test_default_site_theme
(
self
):
"""
Test that request.site_theme returns theme defined by DEFAULT_SITE_THEME setting
when there is no theme associated with the current site.
"""
self
.
assertEqual
(
self
.
site_theme_middleware
.
process_request
(
self
.
request
),
None
)
self
.
assertIsNotNone
(
self
.
request
.
site_theme
)
self
.
assertEqual
(
self
.
request
.
site_theme
.
theme_dir_name
,
"test-theme"
)
@override_settings
(
DEFAULT_SITE_THEME
=
None
)
def
test_default_site_theme_2
(
self
):
"""
Test that request.site_theme returns None when there is no theme associated with
the current site and DEFAULT_SITE_THEME is also None.
"""
self
.
assertEqual
(
self
.
site_theme_middleware
.
process_request
(
self
.
request
),
None
)
self
.
assertIsNone
(
self
.
request
.
site_theme
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment