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
42eaa4b0
Commit
42eaa4b0
authored
Aug 16, 2014
by
Braden MacDonald
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Unit tests for bugs in IDDE API, including LMS-6563
parent
92fa79db
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
74 additions
and
3 deletions
+74
-3
lms/djangoapps/instructor/tests/test_api.py
+62
-3
lms/djangoapps/instructor/tests/test_tools.py
+12
-0
No files found.
lms/djangoapps/instructor/tests/test_api.py
View file @
42eaa4b0
...
...
@@ -2219,11 +2219,13 @@ class TestDueDateExtensions(ModuleStoreTestCase, LoginEnrollmentTestCase):
"""
Fixtures.
"""
super
(
TestDueDateExtensions
,
self
)
.
setUp
()
due
=
datetime
.
datetime
(
2010
,
5
,
12
,
2
,
42
,
tzinfo
=
utc
)
course
=
CourseFactory
.
create
()
week1
=
ItemFactory
.
create
(
due
=
due
)
week2
=
ItemFactory
.
create
(
due
=
due
)
week3
=
ItemFactory
.
create
(
due
=
due
)
week3
=
ItemFactory
.
create
(
)
# No due date
course
.
children
=
[
week1
.
location
.
to_deprecated_string
(),
week2
.
location
.
to_deprecated_string
(),
week3
.
location
.
to_deprecated_string
()]
...
...
@@ -2283,6 +2285,7 @@ class TestDueDateExtensions(ModuleStoreTestCase, LoginEnrollmentTestCase):
self
.
week1
=
week1
self
.
homework
=
homework
self
.
week2
=
week2
self
.
week3
=
week3
self
.
user1
=
user1
self
.
user2
=
user2
...
...
@@ -2300,6 +2303,32 @@ class TestDueDateExtensions(ModuleStoreTestCase, LoginEnrollmentTestCase):
self
.
assertEqual
(
datetime
.
datetime
(
2013
,
12
,
30
,
0
,
0
,
tzinfo
=
utc
),
get_extended_due
(
self
.
course
,
self
.
week1
,
self
.
user1
))
def
test_change_to_invalid_due_date
(
self
):
url
=
reverse
(
'change_due_date'
,
kwargs
=
{
'course_id'
:
self
.
course
.
id
.
to_deprecated_string
()})
response
=
self
.
client
.
get
(
url
,
{
'student'
:
self
.
user1
.
username
,
'url'
:
self
.
week1
.
location
.
to_deprecated_string
(),
'due_datetime'
:
'01/01/2009 00:00'
})
self
.
assertEqual
(
response
.
status_code
,
400
,
response
.
content
)
self
.
assertEqual
(
None
,
get_extended_due
(
self
.
course
,
self
.
week1
,
self
.
user1
)
)
def
test_change_nonexistent_due_date
(
self
):
url
=
reverse
(
'change_due_date'
,
kwargs
=
{
'course_id'
:
self
.
course
.
id
.
to_deprecated_string
()})
response
=
self
.
client
.
get
(
url
,
{
'student'
:
self
.
user1
.
username
,
'url'
:
self
.
week3
.
location
.
to_deprecated_string
(),
'due_datetime'
:
'12/30/2013 00:00'
})
self
.
assertEqual
(
response
.
status_code
,
400
,
response
.
content
)
self
.
assertEqual
(
None
,
get_extended_due
(
self
.
course
,
self
.
week3
,
self
.
user1
)
)
def
test_reset_date
(
self
):
self
.
test_change_due_date
()
url
=
reverse
(
'reset_due_date'
,
kwargs
=
{
'course_id'
:
self
.
course
.
id
.
to_deprecated_string
()})
...
...
@@ -2308,8 +2337,38 @@ class TestDueDateExtensions(ModuleStoreTestCase, LoginEnrollmentTestCase):
'url'
:
self
.
week1
.
location
.
to_deprecated_string
(),
})
self
.
assertEqual
(
response
.
status_code
,
200
,
response
.
content
)
self
.
assertEqual
(
None
,
get_extended_due
(
self
.
course
,
self
.
week1
,
self
.
user1
))
self
.
assertEqual
(
None
,
get_extended_due
(
self
.
course
,
self
.
week1
,
self
.
user1
)
)
def
test_reset_nonexistent_extension
(
self
):
url
=
reverse
(
'reset_due_date'
,
kwargs
=
{
'course_id'
:
self
.
course
.
id
.
to_deprecated_string
()})
response
=
self
.
client
.
get
(
url
,
{
'student'
:
self
.
user1
.
username
,
'url'
:
self
.
week1
.
location
.
to_deprecated_string
(),
})
self
.
assertEqual
(
response
.
status_code
,
400
,
response
.
content
)
def
test_reset_extension_to_deleted_date
(
self
):
"""
Test that we can delete a due date extension after deleting the normal
due date, without causing an error.
"""
self
.
test_change_due_date
()
self
.
week1
.
due
=
None
self
.
week1
=
self
.
store
.
update_item
(
self
.
week1
,
self
.
user1
.
id
)
# Now, week1's normal due date is deleted but the extension still exists.
url
=
reverse
(
'reset_due_date'
,
kwargs
=
{
'course_id'
:
self
.
course
.
id
.
to_deprecated_string
()})
response
=
self
.
client
.
get
(
url
,
{
'student'
:
self
.
user1
.
username
,
'url'
:
self
.
week1
.
location
.
to_deprecated_string
(),
})
self
.
assertEqual
(
response
.
status_code
,
200
,
response
.
content
)
self
.
assertEqual
(
None
,
get_extended_due
(
self
.
course
,
self
.
week1
,
self
.
user1
)
)
def
test_show_unit_extensions
(
self
):
self
.
test_change_due_date
()
...
...
lms/djangoapps/instructor/tests/test_tools.py
View file @
42eaa4b0
...
...
@@ -170,6 +170,7 @@ class TestSetDueDateExtension(ModuleStoreTestCase):
course
=
CourseFactory
.
create
()
week1
=
ItemFactory
.
create
(
due
=
due
,
parent
=
course
)
week2
=
ItemFactory
.
create
(
due
=
due
,
parent
=
course
)
week3
=
ItemFactory
.
create
(
parent
=
course
)
homework
=
ItemFactory
.
create
(
parent
=
week1
,
...
...
@@ -192,6 +193,7 @@ class TestSetDueDateExtension(ModuleStoreTestCase):
self
.
week1
=
week1
self
.
homework
=
homework
self
.
week2
=
week2
self
.
week3
=
week3
self
.
user
=
user
self
.
extended_due
=
functools
.
partial
(
...
...
@@ -211,6 +213,16 @@ class TestSetDueDateExtension(ModuleStoreTestCase):
self
.
assertEqual
(
extended_due
(
self
.
week1
),
extended
)
self
.
assertEqual
(
extended_due
(
self
.
homework
),
extended
)
def
test_set_due_date_extension_invalid_date
(
self
):
extended
=
datetime
.
datetime
(
2009
,
1
,
1
,
0
,
0
,
tzinfo
=
utc
)
with
self
.
assertRaises
(
tools
.
DashboardError
):
tools
.
set_due_date_extension
(
self
.
course
,
self
.
week1
,
self
.
user
,
extended
)
def
test_set_due_date_extension_no_date
(
self
):
extended
=
datetime
.
datetime
(
2013
,
12
,
25
,
0
,
0
,
tzinfo
=
utc
)
with
self
.
assertRaises
(
tools
.
DashboardError
):
tools
.
set_due_date_extension
(
self
.
course
,
self
.
week3
,
self
.
user
,
extended
)
def
test_reset_due_date_extension
(
self
):
tools
.
set_due_date_extension
(
self
.
course
,
self
.
week1
,
self
.
user
,
None
)
self
.
assertEqual
(
self
.
extended_due
(
self
.
week1
),
None
)
...
...
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