Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
problem-builder
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
OpenEdx
problem-builder
Commits
96496aa6
Commit
96496aa6
authored
Jul 08, 2015
by
Tim Krones
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update and extend integration tests for problem-builder.
parent
f4638973
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
59 additions
and
15 deletions
+59
-15
problem_builder/tests/integration/test_student_answers_dashboard.py
+59
-15
No files found.
problem_builder/tests/integration/test_student_answers_dashboard.py
View file @
96496aa6
...
@@ -46,7 +46,7 @@ class StudentAnswersDashboardTest(SeleniumXBlockTest):
...
@@ -46,7 +46,7 @@ class StudentAnswersDashboardTest(SeleniumXBlockTest):
super
(
StudentAnswersDashboardTest
,
self
)
.
setUp
()
super
(
StudentAnswersDashboardTest
,
self
)
.
setUp
()
self
.
set_scenario_xml
(
"""
self
.
set_scenario_xml
(
"""
<vertical_demo>
<vertical_demo>
<pb-
data-export
url_name="data_export"/>
<pb-
student-answers-dashboard
url_name="data_export"/>
</vertical_demo>
</vertical_demo>
"""
)
"""
)
...
@@ -60,13 +60,14 @@ class StudentAnswersDashboardTest(SeleniumXBlockTest):
...
@@ -60,13 +60,14 @@ class StudentAnswersDashboardTest(SeleniumXBlockTest):
'instructor_task.models'
:
MockInstructorTaskModelsModule
(),
'instructor_task.models'
:
MockInstructorTaskModelsModule
(),
})
})
@patch.object
(
StudentAnswersDashboardBlock
,
'user_is_staff'
,
Mock
(
return_value
=
True
))
@patch.object
(
StudentAnswersDashboardBlock
,
'user_is_staff'
,
Mock
(
return_value
=
True
))
def
test_data_export
(
self
):
def
test_data_export_success
(
self
):
data_export
=
self
.
go_to_view
()
student_answers_dashboard
=
self
.
go_to_view
()
start_button
=
data_export
.
find_element_by_class_name
(
'data-export-start'
)
start_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-start'
)
cancel_button
=
data_export
.
find_element_by_class_name
(
'data-export-cancel'
)
cancel_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-cancel'
)
download_button
=
data_export
.
find_element_by_class_name
(
'data-export-download'
)
download_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-download'
)
delete_button
=
data_export
.
find_element_by_class_name
(
'data-export-delete'
)
delete_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-delete'
)
status_area
=
data_export
.
find_element_by_class_name
(
'data-export-status'
)
status_area
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-status'
)
info_area
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-info'
)
start_button
.
click
()
start_button
.
click
()
...
@@ -80,12 +81,55 @@ class StudentAnswersDashboardTest(SeleniumXBlockTest):
...
@@ -80,12 +81,55 @@ class StudentAnswersDashboardTest(SeleniumXBlockTest):
self
.
wait_until_hidden
(
cancel_button
)
self
.
wait_until_hidden
(
cancel_button
)
self
.
wait_until_visible
(
download_button
)
self
.
wait_until_visible
(
download_button
)
self
.
wait_until_visible
(
delete_button
)
self
.
wait_until_visible
(
delete_button
)
self
.
assertIn
(
'A report is available for download.'
,
status_area
.
text
)
self
.
assertEqual
(
''
,
status_area
.
text
)
self
.
assertIn
(
'Results retrieved on'
,
info_area
.
text
)
@patch.dict
(
'sys.modules'
,
{
'problem_builder.tasks'
:
MockTasksModule
(
successful
=
False
),
'instructor_task'
:
True
,
'instructor_task.models'
:
MockInstructorTaskModelsModule
(),
})
@patch.object
(
StudentAnswersDashboardBlock
,
'user_is_staff'
,
Mock
(
return_value
=
True
))
def
test_data_export_error
(
self
):
student_answers_dashboard
=
self
.
go_to_view
()
start_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-start'
)
cancel_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-cancel'
)
download_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-download'
)
delete_button
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-delete'
)
status_area
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-status'
)
info_area
=
student_answers_dashboard
.
find_element_by_class_name
(
'data-export-info'
)
start_button
.
click
()
self
.
wait_until_hidden
(
start_button
)
self
.
wait_until_visible
(
cancel_button
)
self
.
wait_until_hidden
(
download_button
)
self
.
wait_until_hidden
(
delete_button
)
self
.
assertIn
(
'The report is currently being generated'
,
status_area
.
text
)
self
.
wait_until_clickable
(
start_button
)
self
.
wait_until_hidden
(
cancel_button
)
self
.
wait_until_visible
(
delete_button
)
self
.
assertIn
(
'Data export failed. Reason:'
,
status_area
.
text
)
self
.
assertEqual
(
''
,
info_area
.
text
)
def
test_non_staff_disabled
(
self
):
def
test_non_staff_disabled
(
self
):
data_export
=
self
.
go_to_view
()
student_answers_dashboard
=
self
.
go_to_view
()
self
.
assertRaises
(
NoSuchElementException
,
data_export
.
find_element_by_class_name
,
'data-export-start'
)
self
.
assertRaises
(
self
.
assertRaises
(
NoSuchElementException
,
data_export
.
find_element_by_class_name
,
'data-export-cancel'
)
NoSuchElementException
,
student_answers_dashboard
.
find_element_by_class_name
,
'data-export-start'
self
.
assertRaises
(
NoSuchElementException
,
data_export
.
find_element_by_class_name
,
'data-export-download'
)
)
self
.
assertRaises
(
NoSuchElementException
,
data_export
.
find_element_by_class_name
,
'data-export-delete'
)
self
.
assertRaises
(
self
.
assertRaises
(
NoSuchElementException
,
data_export
.
find_element_by_class_name
,
'data-export-status'
)
NoSuchElementException
,
student_answers_dashboard
.
find_element_by_class_name
,
'data-export-cancel'
)
self
.
assertRaises
(
NoSuchElementException
,
student_answers_dashboard
.
find_element_by_class_name
,
'data-export-download'
)
self
.
assertRaises
(
NoSuchElementException
,
student_answers_dashboard
.
find_element_by_class_name
,
'data-export-delete'
)
self
.
assertRaises
(
NoSuchElementException
,
student_answers_dashboard
.
find_element_by_class_name
,
'data-export-results'
)
self
.
assertRaises
(
NoSuchElementException
,
student_answers_dashboard
.
find_element_by_class_name
,
'data-export-status'
)
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