Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
course-discovery
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
course-discovery
Commits
c27186f6
Commit
c27186f6
authored
Jul 30, 2016
by
Clinton Blackburn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Test Cleanup for refresh_course_metadata
ECOM-5094
parent
c138c0a2
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
22 deletions
+20
-22
course_discovery/apps/course_metadata/management/commands/tests/test_refresh_course_metadata.py
+20
-22
No files found.
course_discovery/apps/course_metadata/management/commands/tests/test_refresh_course_metadata.py
View file @
c27186f6
...
...
@@ -6,21 +6,25 @@ from django.test import TestCase
from
course_discovery.apps.core.tests.factories
import
PartnerFactory
from
course_discovery.apps.core.tests.utils
import
mock_api_callback
from
course_discovery.apps.course_metadata.models
import
Course
,
CourseRun
,
Organization
,
P
artner
,
P
rogram
from
course_discovery.apps.course_metadata.models
import
Course
,
CourseRun
,
Organization
,
Program
from
course_discovery.apps.course_metadata.tests
import
mock_data
ACCESS_TOKEN
=
'secret'
ACCESS_TOKEN_TYPE
=
'Bearer'
JSON
=
'application/json'
LOGGER_NAME
=
'course_metadata.management.commands.refresh_course_metadata'
class
RefreshCourseMetadataCommandTests
(
TestCase
):
def
setUp
(
self
):
super
(
RefreshCourseMetadataCommandTests
,
self
)
.
setUp
()
self
.
partner
=
PartnerFactory
()
self
.
mock_access_token_api
()
self
.
mock_organizations_api
()
self
.
mock_lms_courses_api
()
self
.
mock_ecommerce_courses_api
()
self
.
mock_marketing_courses_api
()
self
.
mock_programs_api
()
def
mock_access_token_api
(
self
):
body
=
{
'access_token'
:
ACCESS_TOKEN
,
...
...
@@ -96,50 +100,44 @@ class RefreshCourseMetadataCommandTests(TestCase):
@responses.activate
def
test_refresh_course_metadata
(
self
):
""" Verify """
self
.
mock_access_token_api
()
self
.
mock_organizations_api
()
self
.
mock_lms_courses_api
()
self
.
mock_ecommerce_courses_api
()
self
.
mock_marketing_courses_api
()
self
.
mock_programs_api
()
""" Verify the refresh_course_metadata management command creates new objects. """
call_command
(
'refresh_course_metadata'
)
partners
=
Partner
.
objects
.
all
()
self
.
assertEqual
(
len
(
partners
),
1
)
organizations
=
Organization
.
objects
.
all
()
self
.
assertEqual
(
len
(
organizations
),
3
)
self
.
assertEqual
(
organizations
.
count
(
),
3
)
for
organization
in
organizations
:
self
.
assertEqual
(
organization
.
partner
.
short_code
,
self
.
partner
.
short_code
)
courses
=
Course
.
objects
.
all
()
self
.
assertEqual
(
len
(
courses
),
2
)
self
.
assertEqual
(
courses
.
count
(
),
2
)
for
course
in
courses
:
self
.
assertEqual
(
course
.
partner
.
short_code
,
self
.
partner
.
short_code
)
course_runs
=
CourseRun
.
objects
.
all
()
self
.
assertEqual
(
len
(
course_runs
),
3
)
self
.
assertEqual
(
course_runs
.
count
(
),
3
)
for
course_run
in
course_runs
:
self
.
assertEqual
(
course_run
.
course
.
partner
.
short_code
,
self
.
partner
.
short_code
)
programs
=
Program
.
objects
.
all
()
self
.
assertEqual
(
len
(
programs
),
2
)
self
.
assertEqual
(
programs
.
count
(
),
2
)
for
program
in
programs
:
self
.
assertEqual
(
program
.
partner
.
short_code
,
self
.
partner
.
short_code
)
# Refresh only a specific partner
command_args
=
[
'--partner_code={0}'
.
format
(
partners
[
0
]
.
short_code
)]
command_args
=
[
'--partner_code={0}'
.
format
(
self
.
partner
.
short_code
)]
call_command
(
'refresh_course_metadata'
,
*
command_args
)
# Invalid partner code
@responses.activate
def
test_refresh_course_metadata_with_invalid_partner_code
(
self
):
""" Verify an error is raised if an invalid partner code is passed on the command line. """
with
self
.
assertRaises
(
CommandError
):
command_args
=
[
'--partner_code=invalid'
]
call_command
(
'refresh_course_metadata'
,
*
command_args
)
# Access token but no token type
@responses.activate
def
test_refresh_course_metadata_with_no_token_type
(
self
):
""" Verify an error is raised if an access token is passed in without a token type. """
with
self
.
assertRaises
(
CommandError
):
command_args
=
[
'--access_token=test-access-token'
]
call_command
(
'refresh_course_metadata'
,
*
command_args
)
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