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
c2de6bad
Commit
c2de6bad
authored
Mar 06, 2017
by
Waheed Ahmed
Committed by
Bill DeRusha
Mar 16, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added comments to publisher/tests/test_emails.py
parent
1cbd3c46
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
25 deletions
+25
-25
course_discovery/apps/publisher/tests/test_emails.py
+25
-25
No files found.
course_discovery/apps/publisher/tests/test_emails.py
View file @
c2de6bad
...
@@ -20,7 +20,9 @@ from course_discovery.apps.publisher.tests.factories import UserAttributeFactory
...
@@ -20,7 +20,9 @@ from course_discovery.apps.publisher.tests.factories import UserAttributeFactory
class
StudioInstanceCreatedEmailTests
(
TestCase
):
class
StudioInstanceCreatedEmailTests
(
TestCase
):
""" Tests for the email functionality for studio instance created. """
"""
Tests for the studio instance created email functionality.
"""
def
setUp
(
self
):
def
setUp
(
self
):
super
(
StudioInstanceCreatedEmailTests
,
self
)
.
setUp
()
super
(
StudioInstanceCreatedEmailTests
,
self
)
.
setUp
()
...
@@ -61,7 +63,7 @@ class StudioInstanceCreatedEmailTests(TestCase):
...
@@ -61,7 +63,7 @@ class StudioInstanceCreatedEmailTests(TestCase):
)
)
def
assert_email_sent
(
self
,
object_path
,
subject
,
expected_body
):
def
assert_email_sent
(
self
,
object_path
,
subject
,
expected_body
):
"""
DRY method to assert sen
t email data"""
"""
Asser
t email data"""
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
([
settings
.
PUBLISHER_FROM_EMAIL
],
mail
.
outbox
[
0
]
.
to
)
self
.
assertEqual
([
settings
.
PUBLISHER_FROM_EMAIL
],
mail
.
outbox
[
0
]
.
to
)
self
.
assertEqual
([
self
.
user
.
email
,
self
.
course_team
.
email
],
mail
.
outbox
[
0
]
.
bcc
)
self
.
assertEqual
([
self
.
user
.
email
,
self
.
course_team
.
email
],
mail
.
outbox
[
0
]
.
bcc
)
...
@@ -83,7 +85,7 @@ class StudioInstanceCreatedEmailTests(TestCase):
...
@@ -83,7 +85,7 @@ class StudioInstanceCreatedEmailTests(TestCase):
class
CourseCreatedEmailTests
(
TestCase
):
class
CourseCreatedEmailTests
(
TestCase
):
""" Tests for the
email functionality for new course created
. """
""" Tests for the
new course created email functionality
. """
def
setUp
(
self
):
def
setUp
(
self
):
super
(
CourseCreatedEmailTests
,
self
)
.
setUp
()
super
(
CourseCreatedEmailTests
,
self
)
.
setUp
()
...
@@ -106,7 +108,7 @@ class CourseCreatedEmailTests(TestCase):
...
@@ -106,7 +108,7 @@ class CourseCreatedEmailTests(TestCase):
@mock.patch
(
'django.core.mail.message.EmailMessage.send'
,
mock
.
Mock
(
side_effect
=
TypeError
))
@mock.patch
(
'django.core.mail.message.EmailMessage.send'
,
mock
.
Mock
(
side_effect
=
TypeError
))
def
test_email_with_error
(
self
):
def
test_email_with_error
(
self
):
""" Verify that emails failure log message."""
""" Verify that emails failure log
s error
message."""
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
emails
.
send_email_for_course_creation
(
self
.
course_run
.
course
,
self
.
course_run
)
emails
.
send_email_for_course_creation
(
self
.
course_run
.
course
,
self
.
course_run
)
...
@@ -121,14 +123,14 @@ class CourseCreatedEmailTests(TestCase):
...
@@ -121,14 +123,14 @@ class CourseCreatedEmailTests(TestCase):
)
)
def
test_email_sent_successfully
(
self
):
def
test_email_sent_successfully
(
self
):
""" Verify that
emails send as course creation notifications
."""
""" Verify that
studio instance request email sent successfully
."""
emails
.
send_email_for_course_creation
(
self
.
course_run
.
course
,
self
.
course_run
)
emails
.
send_email_for_course_creation
(
self
.
course_run
.
course
,
self
.
course_run
)
subject
=
'New Studio instance request for {title}'
.
format
(
title
=
self
.
course_run
.
course
.
title
)
subject
=
'New Studio instance request for {title}'
.
format
(
title
=
self
.
course_run
.
course
.
title
)
self
.
assert_email_sent
(
subject
)
self
.
assert_email_sent
(
subject
)
def
assert_email_sent
(
self
,
subject
):
def
assert_email_sent
(
self
,
subject
):
"""
Verify the email data for tests cases
."""
"""
Assert email data
."""
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
([
self
.
user
.
email
],
mail
.
outbox
[
0
]
.
to
)
self
.
assertEqual
([
self
.
user
.
email
],
mail
.
outbox
[
0
]
.
to
)
self
.
assertEqual
(
str
(
mail
.
outbox
[
0
]
.
subject
),
subject
)
self
.
assertEqual
(
str
(
mail
.
outbox
[
0
]
.
subject
),
subject
)
...
@@ -150,7 +152,7 @@ class CourseCreatedEmailTests(TestCase):
...
@@ -150,7 +152,7 @@ class CourseCreatedEmailTests(TestCase):
class
SendForReviewEmailTests
(
TestCase
):
class
SendForReviewEmailTests
(
TestCase
):
""" Tests for the
email functionality for send for review
. """
""" Tests for the
send for review email functionality
. """
def
setUp
(
self
):
def
setUp
(
self
):
super
(
SendForReviewEmailTests
,
self
)
.
setUp
()
super
(
SendForReviewEmailTests
,
self
)
.
setUp
()
...
@@ -158,7 +160,7 @@ class SendForReviewEmailTests(TestCase):
...
@@ -158,7 +160,7 @@ class SendForReviewEmailTests(TestCase):
self
.
course_state
=
factories
.
CourseStateFactory
()
self
.
course_state
=
factories
.
CourseStateFactory
()
def
test_email_with_error
(
self
):
def
test_email_with_error
(
self
):
""" Verify that email failure log error message."""
""" Verify that email failure log
s
error message."""
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
emails
.
send_email_for_send_for_review
(
self
.
course_state
.
course
,
self
.
user
)
emails
.
send_email_for_send_for_review
(
self
.
course_state
.
course
,
self
.
user
)
...
@@ -174,7 +176,7 @@ class SendForReviewEmailTests(TestCase):
...
@@ -174,7 +176,7 @@ class SendForReviewEmailTests(TestCase):
class
CourseMarkAsReviewedEmailTests
(
TestCase
):
class
CourseMarkAsReviewedEmailTests
(
TestCase
):
""" Tests for the
email functionality for mark as reviewed
. """
""" Tests for the
mark as reviewed email functionality
. """
def
setUp
(
self
):
def
setUp
(
self
):
super
(
CourseMarkAsReviewedEmailTests
,
self
)
.
setUp
()
super
(
CourseMarkAsReviewedEmailTests
,
self
)
.
setUp
()
...
@@ -182,7 +184,7 @@ class CourseMarkAsReviewedEmailTests(TestCase):
...
@@ -182,7 +184,7 @@ class CourseMarkAsReviewedEmailTests(TestCase):
self
.
course_state
=
factories
.
CourseStateFactory
()
self
.
course_state
=
factories
.
CourseStateFactory
()
def
test_email_with_error
(
self
):
def
test_email_with_error
(
self
):
""" Verify that email failure log error message."""
""" Verify that email failure log
s
error message."""
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
emails
.
send_email_for_mark_as_reviewed
(
self
.
course_state
.
course
,
self
.
user
)
emails
.
send_email_for_mark_as_reviewed
(
self
.
course_state
.
course
,
self
.
user
)
...
@@ -198,7 +200,7 @@ class CourseMarkAsReviewedEmailTests(TestCase):
...
@@ -198,7 +200,7 @@ class CourseMarkAsReviewedEmailTests(TestCase):
class
CourseRunSendForReviewEmailTests
(
TestCase
):
class
CourseRunSendForReviewEmailTests
(
TestCase
):
""" Tests for the
email functionality for send for review
. """
""" Tests for the
CourseRun send for review email functionality
. """
def
setUp
(
self
):
def
setUp
(
self
):
super
(
CourseRunSendForReviewEmailTests
,
self
)
.
setUp
()
super
(
CourseRunSendForReviewEmailTests
,
self
)
.
setUp
()
...
@@ -227,7 +229,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
...
@@ -227,7 +229,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
toggle_switch
(
'enable_publisher_email_notifications'
,
True
)
toggle_switch
(
'enable_publisher_email_notifications'
,
True
)
def
test_email_sent_by_marketing_reviewer
(
self
):
def
test_email_sent_by_marketing_reviewer
(
self
):
""" Verify that email works successfully."""
""" Verify that email works successfully
for marketing user
."""
factories
.
CourseUserRoleFactory
(
factories
.
CourseUserRoleFactory
(
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
)
)
...
@@ -236,7 +238,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
...
@@ -236,7 +238,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
self
.
assert_email_sent
(
subject
,
self
.
user_2
)
self
.
assert_email_sent
(
subject
,
self
.
user_2
)
def
test_email_sent_by_course_team
(
self
):
def
test_email_sent_by_course_team
(
self
):
""" Verify that email works successfully."""
""" Verify that email works successfully
for course team user
."""
factories
.
CourseUserRoleFactory
(
factories
.
CourseUserRoleFactory
(
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
)
)
...
@@ -245,7 +247,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
...
@@ -245,7 +247,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
self
.
assert_email_sent
(
subject
,
self
.
user
)
self
.
assert_email_sent
(
subject
,
self
.
user
)
def
test_email_with_error
(
self
):
def
test_email_with_error
(
self
):
""" Verify that email failure log error message."""
""" Verify that email failure log
s
error message."""
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
with
LogCapture
(
emails
.
logger
.
name
)
as
l
:
emails
.
send_email_for_send_for_review_course_run
(
self
.
course_run
,
self
.
user
)
emails
.
send_email_for_send_for_review_course_run
(
self
.
course_run
,
self
.
user
)
...
@@ -260,7 +262,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
...
@@ -260,7 +262,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
)
)
def
assert_email_sent
(
self
,
subject
,
to_email
):
def
assert_email_sent
(
self
,
subject
,
to_email
):
"""
Verify the email data for tests cases
."""
"""
Assert email data
."""
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
(
to_email
.
email
,
mail
.
outbox
[
0
]
.
to
[
0
])
self
.
assertEqual
(
to_email
.
email
,
mail
.
outbox
[
0
]
.
to
[
0
])
self
.
assertEqual
(
str
(
mail
.
outbox
[
0
]
.
subject
),
subject
)
self
.
assertEqual
(
str
(
mail
.
outbox
[
0
]
.
subject
),
subject
)
...
@@ -272,7 +274,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
...
@@ -272,7 +274,7 @@ class CourseRunSendForReviewEmailTests(TestCase):
class
CourseRunMarkAsReviewedEmailTests
(
TestCase
):
class
CourseRunMarkAsReviewedEmailTests
(
TestCase
):
""" Tests
email functionality of mark as reviewed
. """
""" Tests
for the CourseRun mark as reviewed email functionality
. """
def
setUp
(
self
):
def
setUp
(
self
):
super
(
CourseRunMarkAsReviewedEmailTests
,
self
)
.
setUp
()
super
(
CourseRunMarkAsReviewedEmailTests
,
self
)
.
setUp
()
...
@@ -300,7 +302,7 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
...
@@ -300,7 +302,7 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
toggle_switch
(
'enable_publisher_email_notifications'
,
True
)
toggle_switch
(
'enable_publisher_email_notifications'
,
True
)
def
test_email_sent_by_marketing_reviewer
(
self
):
def
test_email_sent_by_marketing_reviewer
(
self
):
""" Verify that email works successfully."""
""" Verify that email works successfully
for marketing user
."""
factories
.
CourseUserRoleFactory
(
factories
.
CourseUserRoleFactory
(
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
)
)
...
@@ -308,7 +310,7 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
...
@@ -308,7 +310,7 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
self
.
assert_email_sent
(
self
.
user_2
)
self
.
assert_email_sent
(
self
.
user_2
)
def
test_email_sent_by_course_team
(
self
):
def
test_email_sent_by_course_team
(
self
):
""" Verify that email works successfully."""
""" Verify that email works successfully
for course team user
."""
factories
.
CourseUserRoleFactory
(
factories
.
CourseUserRoleFactory
(
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
course
=
self
.
course
,
role
=
PublisherUserRole
.
MarketingReviewer
,
user
=
self
.
user
)
)
...
@@ -356,11 +358,9 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
...
@@ -356,11 +358,9 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
def
assert_email_sent
(
self
,
to_email
):
def
assert_email_sent
(
self
,
to_email
):
""" Verify the email data for tests cases."""
""" Verify the email data for tests cases."""
run_name
=
'{pacing_type}: {start_date}'
.
format
(
course_key
=
CourseKey
.
from_string
(
self
.
course_run
.
lms_course_id
)
pacing_type
=
self
.
course_run
.
get_pacing_type_display
(),
subject
=
'Review complete: {course_name} {run_number}'
.
format
(
start_date
=
self
.
course_run
.
start
.
strftime
(
"
%
B
%
d,
%
Y"
)
course_name
=
self
.
course
.
title
,
run_number
=
course_key
.
run
)
)
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
self
.
assertEqual
(
len
(
mail
.
outbox
),
1
)
...
@@ -375,7 +375,7 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
...
@@ -375,7 +375,7 @@ class CourseRunMarkAsReviewedEmailTests(TestCase):
class
CourseRunPreviewEmailTests
(
TestCase
):
class
CourseRunPreviewEmailTests
(
TestCase
):
"""
"""
Tests
email functionality of course preview
.
Tests
for the course preview email functionality
.
"""
"""
def
setUp
(
self
):
def
setUp
(
self
):
...
@@ -493,7 +493,7 @@ class CourseRunPreviewEmailTests(TestCase):
...
@@ -493,7 +493,7 @@ class CourseRunPreviewEmailTests(TestCase):
class
CourseRunPublishedEmailTests
(
TestCase
):
class
CourseRunPublishedEmailTests
(
TestCase
):
"""
"""
Tests
email functionality for course run published
.
Tests
for course run published email functionality
.
"""
"""
def
setUp
(
self
):
def
setUp
(
self
):
...
...
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