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
e5f00e62
Commit
e5f00e62
authored
Jan 20, 2015
by
Matt Drayer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bok Choy test now passes
parent
dce62ed6
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
84 additions
and
25 deletions
+84
-25
common/test/acceptance/pages/studio/settings.py
+33
-8
common/test/acceptance/tests/lms/test_lms.py
+2
-2
common/test/acceptance/tests/studio/test_studio_settings_details.py
+48
-14
requirements/edx/github.txt
+1
-1
No files found.
common/test/acceptance/pages/studio/settings.py
View file @
e5f00e62
...
@@ -17,25 +17,45 @@ class SettingsPage(CoursePage):
...
@@ -17,25 +17,45 @@ class SettingsPage(CoursePage):
def
is_browser_on_page
(
self
):
def
is_browser_on_page
(
self
):
return
self
.
q
(
css
=
'body.view-settings'
)
.
present
return
self
.
q
(
css
=
'body.view-settings'
)
.
present
def
get_elements
(
self
,
css_selector
):
self
.
wait_for_element_presence
(
css_selector
,
'Elements matching "{}" selector are present'
.
format
(
css_selector
)
)
results
=
self
.
q
(
css
=
css_selector
)
return
results
def
get_element
(
self
,
css_selector
):
results
=
self
.
get_elements
(
css_selector
=
css_selector
)
return
results
[
0
]
if
results
else
None
@property
@property
def
pre_requisite_course
(
self
):
def
pre_requisite_course
_options
(
self
):
"""
"""
Returns the pre-requisite course drop down field.
Returns the pre-requisite course drop down field
options
.
"""
"""
return
self
.
q
(
css
=
'#pre-requisite-course'
)
return
self
.
get_elements
(
'#pre-requisite-course'
)
@property
@property
def
entrance_exam_field
(
self
):
def
entrance_exam_field
(
self
):
"""
"""
Returns the enable entrance exam checkbox.
Returns the enable entrance exam checkbox.
"""
"""
return
self
.
q
(
css
=
'#entrance-exam-enabled'
)
.
execute
()
return
self
.
get_element
(
'#entrance-exam-enabled'
)
@property
def
alert_confirmation_title
(
self
):
"""
Returns the alert confirmation element, which contains text
such as 'Your changes have been saved.'
"""
return
self
.
get_element
(
'#alert-confirmation-title'
)
def
require_entrance_exam
(
self
,
required
=
True
):
def
require_entrance_exam
(
self
,
required
=
True
):
"""
"""
Set the entrance exam requirement via the checkbox.
Set the entrance exam requirement via the checkbox.
"""
"""
checkbox
=
self
.
entrance_exam_field
[
0
]
checkbox
=
self
.
entrance_exam_field
selected
=
checkbox
.
is_selected
()
selected
=
checkbox
.
is_selected
()
if
required
and
not
selected
:
if
required
and
not
selected
:
checkbox
.
click
()
checkbox
.
click
()
...
@@ -47,7 +67,7 @@ class SettingsPage(CoursePage):
...
@@ -47,7 +67,7 @@ class SettingsPage(CoursePage):
checkbox
.
click
()
checkbox
.
click
()
self
.
wait_for_element_invisibility
(
self
.
wait_for_element_invisibility
(
'#entrance-exam-minimum-score-pct'
,
'#entrance-exam-minimum-score-pct'
,
'Entrance exam minimum score percent is visible'
'Entrance exam minimum score percent is
in
visible'
)
)
def
save_changes
(
self
,
wait_for_confirmation
=
True
):
def
save_changes
(
self
,
wait_for_confirmation
=
True
):
...
@@ -58,11 +78,16 @@ class SettingsPage(CoursePage):
...
@@ -58,11 +78,16 @@ class SettingsPage(CoursePage):
if
wait_for_confirmation
:
if
wait_for_confirmation
:
EmptyPromise
(
EmptyPromise
(
lambda
:
self
.
q
(
css
=
'#alert-confirmation-title'
)
.
present
,
lambda
:
self
.
q
(
css
=
'#alert-confirmation-title'
)
.
present
,
'
Waiting for save confirmation...
'
'
Save is confirmed
'
)
.
fulfill
()
)
.
fulfill
()
def
refresh_page
(
self
):
def
refresh_page
(
self
,
wait_for_confirmation
=
True
):
"""
"""
Reload the page.
Reload the page.
"""
"""
self
.
browser
.
refresh
()
self
.
browser
.
refresh
()
if
wait_for_confirmation
:
EmptyPromise
(
lambda
:
self
.
q
(
css
=
'body.view-settings'
)
.
present
,
'Page is refreshed'
)
.
fulfill
()
common/test/acceptance/tests/lms/test_lms.py
View file @
e5f00e62
...
@@ -819,7 +819,7 @@ class PreRequisiteCourseTest(UniqueCourseTest):
...
@@ -819,7 +819,7 @@ class PreRequisiteCourseTest(UniqueCourseTest):
"""
"""
set pre-requisite course
set pre-requisite course
"""
"""
select_option_by_value
(
self
.
settings_page
.
pre_requisite_course
,
self
.
pre_requisite_course_id
)
select_option_by_value
(
self
.
settings_page
.
pre_requisite_course
_options
,
self
.
pre_requisite_course_id
)
self
.
settings_page
.
save_changes
()
self
.
settings_page
.
save_changes
()
...
@@ -954,7 +954,7 @@ class EntranceExamTest(UniqueCourseTest):
...
@@ -954,7 +954,7 @@ class EntranceExamTest(UniqueCourseTest):
self
.
settings_page
.
visit
()
self
.
settings_page
.
visit
()
self
.
settings_page
.
wait_for_page
()
self
.
settings_page
.
wait_for_page
()
self
.
assertTrue
(
self
.
settings_page
.
is_browser_on_page
())
self
.
assertTrue
(
self
.
settings_page
.
is_browser_on_page
())
self
.
settings_page
.
entrance_exam_field
[
0
]
.
click
()
self
.
settings_page
.
entrance_exam_field
.
click
()
self
.
settings_page
.
save_changes
()
self
.
settings_page
.
save_changes
()
# Logout and login as a student.
# Logout and login as a student.
...
...
common/test/acceptance/tests/studio/test_studio_settings_details.py
View file @
e5f00e62
...
@@ -38,9 +38,8 @@ class SettingsMilestonesTest(StudioCourseTest):
...
@@ -38,9 +38,8 @@ class SettingsMilestonesTest(StudioCourseTest):
Test to make sure page has pre-requisite course field if milestones app is enabled.
Test to make sure page has pre-requisite course field if milestones app is enabled.
"""
"""
self
.
assertTrue
(
self
.
settings_detail
.
pre_requisite_course
.
present
)
self
.
assertTrue
(
self
.
settings_detail
.
pre_requisite_course
_options
)
@skip
(
"Flaky: 01/16/2015"
)
def
test_prerequisite_course_save_successfully
(
self
):
def
test_prerequisite_course_save_successfully
(
self
):
"""
"""
Scenario: Selecting course from Pre-Requisite course drop down save the selected course as pre-requisite
Scenario: Selecting course from Pre-Requisite course drop down save the selected course as pre-requisite
...
@@ -65,28 +64,63 @@ class SettingsMilestonesTest(StudioCourseTest):
...
@@ -65,28 +64,63 @@ class SettingsMilestonesTest(StudioCourseTest):
)
)
pre_requisite_course_id
=
unicode
(
pre_requisite_course_key
)
pre_requisite_course_id
=
unicode
(
pre_requisite_course_key
)
# refreshing the page after creating a course fixture, in order reload the pre requisite course drop down.
# Refresh the page to load the new course fixture and populate the prrequisite course dropdown
# Then select the prerequisite course and save the changes
self
.
settings_detail
.
refresh_page
()
self
.
settings_detail
.
refresh_page
()
select_option_by_value
(
select_option_by_value
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course
,
browser_query
=
self
.
settings_detail
.
pre_requisite_course
_options
,
value
=
pre_requisite_course_id
value
=
pre_requisite_course_id
)
)
# trigger the save changes button.
self
.
settings_detail
.
save_changes
()
self
.
settings_detail
.
save_changes
()
self
.
assertEqual
(
'Your changes have been saved.'
,
self
.
settings_detail
.
alert_confirmation_title
.
text
)
self
.
assertTrue
(
'Your changes have been saved.'
in
self
.
settings_detail
.
browser
.
page_source
)
# Refresh the page again to confirm the prerequisite course selection is properly reflected
self
.
settings_detail
.
refresh_page
()
self
.
settings_detail
.
refresh_page
()
self
.
assertTrue
(
is_option_value_selected
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course
,
self
.
assertTrue
(
is_option_value_selected
(
value
=
pre_requisite_course_id
))
browser_query
=
self
.
settings_detail
.
pre_requisite_course_options
,
value
=
pre_requisite_course_id
))
# Set the prerequisite course back to None and save the changes
select_option_by_value
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course_options
,
value
=
''
)
self
.
settings_detail
.
save_changes
()
self
.
assertEqual
(
'Your changes have been saved.'
,
self
.
settings_detail
.
alert_confirmation_title
.
text
)
# now reset/update the pre requisite course to none
# Refresh the page again to confirm the None selection is properly reflected
select_option_by_value
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course
,
value
=
''
)
self
.
settings_detail
.
refresh_page
()
self
.
assertTrue
(
is_option_value_selected
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course_options
,
value
=
''
))
# trigger the save changes button.
# Re-pick the prerequisite course and confirm no errors are thrown (covers a discovered bug)
select_option_by_value
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course_options
,
value
=
pre_requisite_course_id
)
self
.
settings_detail
.
save_changes
()
self
.
settings_detail
.
save_changes
()
self
.
assertTrue
(
'Your changes have been saved.'
in
self
.
settings_detail
.
browser
.
page_source
)
self
.
assertEqual
(
self
.
assertTrue
(
is_option_value_selected
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course
,
value
=
''
))
'Your changes have been saved.'
,
self
.
settings_detail
.
alert_confirmation_title
.
text
)
# Refresh the page again to confirm the prerequisite course selection is properly reflected
self
.
settings_detail
.
refresh_page
()
dropdown_status
=
is_option_value_selected
(
browser_query
=
self
.
settings_detail
.
pre_requisite_course_options
,
value
=
pre_requisite_course_id
)
self
.
assertTrue
(
dropdown_status
)
def
test_page_has_enable_entrance_exam_field
(
self
):
def
test_page_has_enable_entrance_exam_field
(
self
):
"""
"""
...
...
requirements/edx/github.txt
View file @
e5f00e62
...
@@ -34,5 +34,5 @@ git+https://github.com/mitocw/django-cas.git@60a5b8e5a62e63e0d5d224a87f0b489201a
...
@@ -34,5 +34,5 @@ git+https://github.com/mitocw/django-cas.git@60a5b8e5a62e63e0d5d224a87f0b489201a
-e git+https://github.com/edx/i18n-tools.git@56f048af9b6868613c14aeae760548834c495011#egg=i18n-tools
-e git+https://github.com/edx/i18n-tools.git@56f048af9b6868613c14aeae760548834c495011#egg=i18n-tools
-e git+https://github.com/edx/edx-oauth2-provider.git@0.4.0#egg=oauth2-provider
-e git+https://github.com/edx/edx-oauth2-provider.git@0.4.0#egg=oauth2-provider
-e git+https://github.com/edx/edx-val.git@ba00a5f2e0571e9a3f37d293a98efe4cbca850d5#egg=edx-val
-e git+https://github.com/edx/edx-val.git@ba00a5f2e0571e9a3f37d293a98efe4cbca850d5#egg=edx-val
-e git+https://github.com/edx/edx-milestones.git@4dfe78a2aae9559ccc979746d13a9b67f0ec311e#egg=edx-milestones
-e git+https://github.com/pmitros/RecommenderXBlock.git@9b07e807c89ba5761827d0387177f71aa57ef056#egg=recommender-xblock
-e git+https://github.com/pmitros/RecommenderXBlock.git@9b07e807c89ba5761827d0387177f71aa57ef056#egg=recommender-xblock
-e git+https://github.com/edx/edx-milestones.git@547f2250ee49e73ce8d7ff4e78ecf1b049892510#egg=edx-milestones
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