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
72c9a24d
Commit
72c9a24d
authored
Jul 12, 2013
by
Jonah Stanley
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #274 from edx/jonahstanley/refactor-global-to-world
Jonahstanley/refactor global to world
parents
772dd302
940113ef
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
87 additions
and
86 deletions
+87
-86
cms/djangoapps/contentstore/features/common.py
+12
-10
cms/djangoapps/contentstore/features/course-team.py
+3
-3
cms/djangoapps/contentstore/features/courses.py
+1
-1
cms/djangoapps/contentstore/features/grading.py
+3
-1
common/djangoapps/terrain/browser.py
+7
-0
common/djangoapps/terrain/course_helpers.py
+5
-5
common/djangoapps/terrain/steps.py
+4
-4
common/test/data/uploads/test
+1
-2
lms/djangoapps/courseware/features/common.py
+13
-17
lms/djangoapps/courseware/features/navigation.py
+7
-11
lms/djangoapps/courseware/features/problems.py
+14
-14
lms/djangoapps/courseware/features/registration.py
+2
-3
lms/djangoapps/courseware/features/video.py
+15
-15
No files found.
cms/djangoapps/contentstore/features/common.py
View file @
72c9a24d
...
...
@@ -14,10 +14,6 @@ logger = getLogger(__name__)
from
terrain.browser
import
reset_data
_COURSE_NAME
=
'Robot Super Course'
_COURSE_NUM
=
'999'
_COURSE_ORG
=
'MITx'
########### STEP HELPERS ##############
...
...
@@ -124,9 +120,9 @@ def create_studio_user(
def
fill_in_course_info
(
name
=
_COURSE_NAME
,
org
=
_COURSE_ORG
,
num
=
_COURSE_NUM
):
name
=
'Robot Super Course'
,
org
=
'MITx'
,
num
=
'999'
):
world
.
css_fill
(
'.new-course-name'
,
name
)
world
.
css_fill
(
'.new-course-org'
,
org
)
world
.
css_fill
(
'.new-course-number'
,
num
)
...
...
@@ -151,15 +147,21 @@ def log_into_studio(
login_form
.
find_by_name
(
'submit'
)
.
click
()
world
.
retry_on_exception
(
fill_login_form
)
assert_true
(
world
.
is_css_present
(
'.new-course-button'
))
world
.
scenario_dict
[
'USER'
]
=
get_user_by_email
(
email
)
def
create_a_course
():
world
.
CourseFactory
.
create
(
org
=
_COURSE_ORG
,
course
=
_COURSE_NUM
,
display_name
=
_COURSE_NAME
)
world
.
scenario_dict
[
'COURSE'
]
=
world
.
CourseFactory
.
create
(
org
=
'MITx'
,
course
=
'999'
,
display_name
=
'Robot Super Course'
)
# Add the user to the instructor group of the course
# so they will have the permissions to see it in studio
course
=
world
.
GroupFactory
.
create
(
name
=
'instructor_MITx/{course_num}/{course_name}'
.
format
(
course_num
=
_COURSE_NUM
,
course_name
=
_COURSE_NAME
.
replace
(
" "
,
"_"
)))
user
=
get_user_by_email
(
'robot+studio@edx.org'
)
course
=
world
.
GroupFactory
.
create
(
name
=
'instructor_MITx/{}/{}'
.
format
(
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
" "
,
"_"
)))
if
world
.
scenario_dict
.
get
(
'USER'
)
is
None
:
user
=
world
.
scenario_dict
[
'USER'
]
else
:
user
=
get_user_by_email
(
'robot+studio@edx.org'
)
user
.
groups
.
add
(
course
)
user
.
save
()
world
.
browser
.
reload
()
...
...
cms/djangoapps/contentstore/features/course-team.py
View file @
72c9a24d
...
...
@@ -2,7 +2,7 @@
#pylint: disable=W0621
from
lettuce
import
world
,
step
from
common
import
create_studio_user
,
log_into_studio
,
_COURSE_NAME
from
common
import
create_studio_user
,
log_into_studio
PASSWORD
=
'test'
EMAIL_EXTENSION
=
'@edx.org'
...
...
@@ -50,9 +50,9 @@ def see_course(_step, doesnt_see_course, gender):
all_courses
=
world
.
css_find
(
class_css
,
wait_time
=
1
)
all_names
=
[
item
.
html
for
item
in
all_courses
]
if
doesnt_see_course
:
assert
not
_COURSE_NAME
in
all_names
assert
not
world
.
scenario_dict
[
'COURSE'
]
.
display_name
in
all_names
else
:
assert
_COURSE_NAME
in
all_names
assert
world
.
scenario_dict
[
'COURSE'
]
.
display_name
in
all_names
@step
(
u's?he cannot delete users'
)
...
...
cms/djangoapps/contentstore/features/courses.py
View file @
72c9a24d
...
...
@@ -45,7 +45,7 @@ def courseware_page_has_loaded_in_studio(step):
@step
(
'I see the course listed in My Courses$'
)
def
i_see_the_course_in_my_courses
(
step
):
course_css
=
'span.class-name'
assert
world
.
css_has_text
(
course_css
,
'Robot Super Course'
)
assert
world
.
css_has_text
(
course_css
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
)
@step
(
'I am on the "([^"]*)" tab$'
)
...
...
cms/djangoapps/contentstore/features/grading.py
View file @
72c9a24d
...
...
@@ -64,7 +64,9 @@ def change_assignment_name(step, old_name, new_name):
@step
(
u'I go back to the main course page'
)
def
main_course_page
(
step
):
main_page_link_css
=
'a[href="/MITx/999/course/Robot_Super_Course"]'
main_page_link_css
=
'a[href="/
%
s/
%
s/course/
%
s"]'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
),)
world
.
css_click
(
main_page_link_css
)
...
...
common/djangoapps/terrain/browser.py
View file @
72c9a24d
...
...
@@ -89,6 +89,13 @@ def reset_data(scenario):
"""
LOGGER
.
debug
(
"Flushing the test database..."
)
call_command
(
'flush'
,
interactive
=
False
)
world
.
absorb
({},
'scenario_dict'
)
@after.each_scenario
def
clear_data
(
scenario
):
world
.
spew
(
'scenario_dict'
)
@after.each_scenario
...
...
common/djangoapps/terrain/course_helpers.py
View file @
72c9a24d
...
...
@@ -17,14 +17,14 @@ from urllib import quote_plus
@world.absorb
def
create_user
(
uname
):
def
create_user
(
uname
,
password
):
# If the user already exists, don't try to create it again
if
len
(
User
.
objects
.
filter
(
username
=
uname
))
>
0
:
return
portal_user
=
UserFactory
.
build
(
username
=
uname
,
email
=
uname
+
'@edx.org'
)
portal_user
.
set_password
(
'test'
)
portal_user
.
set_password
(
password
)
portal_user
.
save
()
registration
=
world
.
RegistrationFactory
(
user
=
portal_user
)
...
...
@@ -43,8 +43,8 @@ def log_in(username, password):
"""
# Authenticate the user
user
=
authenticate
(
username
=
username
,
password
=
password
)
assert
(
user
is
not
None
and
user
.
is_active
)
world
.
scenario_dict
[
'USER'
]
=
authenticate
(
username
=
username
,
password
=
password
)
assert
(
world
.
scenario_dict
[
'USER'
]
is
not
None
and
world
.
scenario_dict
[
'USER'
]
.
is_active
)
# Send a fake HttpRequest to log the user in
# We need to process the request using
...
...
@@ -53,7 +53,7 @@ def log_in(username, password):
request
=
HttpRequest
()
SessionMiddleware
()
.
process_request
(
request
)
AuthenticationMiddleware
()
.
process_request
(
request
)
login
(
request
,
user
)
login
(
request
,
world
.
scenario_dict
[
'USER'
]
)
# Save the session
request
.
session
.
save
()
...
...
common/djangoapps/terrain/steps.py
View file @
72c9a24d
...
...
@@ -93,7 +93,7 @@ def i_log_in(step):
@step
(
'I am a logged in user$'
)
def
i_am_logged_in_user
(
step
):
world
.
create_user
(
'robot'
)
world
.
create_user
(
'robot'
,
'test'
)
world
.
log_in
(
'robot'
,
'test'
)
...
...
@@ -139,7 +139,7 @@ def should_see_in_the_page(step, doesnt_appear, text):
@step
(
'I am logged in$'
)
def
i_am_logged_in
(
step
):
world
.
create_user
(
'robot'
)
world
.
create_user
(
'robot'
,
'test'
)
world
.
log_in
(
'robot'
,
'test'
)
world
.
browser
.
visit
(
django_url
(
'/'
))
# You should not see the login link
...
...
@@ -148,12 +148,12 @@ def i_am_logged_in(step):
@step
(
u'I am an edX user$'
)
def
i_am_an_edx_user
(
step
):
world
.
create_user
(
'robot'
)
world
.
create_user
(
'robot'
,
'test'
)
@step
(
u'User "([^"]*)" is an edX user$'
)
def
registered_edx_user
(
step
,
uname
):
world
.
create_user
(
uname
)
world
.
create_user
(
uname
,
'test'
)
@step
(
u'All dialogs should be closed$'
)
...
...
common/test/data/uploads/test
View file @
72c9a24d
R2FUIGM88K
\ No newline at end of file
This is an arbitrary file for testing uploads
lms/djangoapps/courseware/features/common.py
View file @
72c9a24d
...
...
@@ -18,10 +18,6 @@ from xmodule import seq_module, vertical_module
from
logging
import
getLogger
logger
=
getLogger
(
__name__
)
TEST_COURSE_ORG
=
'edx'
TEST_COURSE_NAME
=
'Test Course'
TEST_SECTION_NAME
=
'Test Section'
@step
(
u'The course "([^"]*)" exists$'
)
def
create_course
(
step
,
course
):
...
...
@@ -34,17 +30,17 @@ def create_course(step, course):
# Create the course
# We always use the same org and display name,
# but vary the course identifier (e.g. 600x or 191x)
course
=
world
.
CourseFactory
.
create
(
org
=
TEST_COURSE_ORG
,
world
.
scenario_dict
[
'COURSE'
]
=
world
.
CourseFactory
.
create
(
org
=
'edx'
,
number
=
course
,
display_name
=
TEST_COURSE_NAME
)
display_name
=
'Test Course'
)
# Add a section to the course to contain problems
section
=
world
.
ItemFactory
.
create
(
parent_location
=
course
.
location
,
display_name
=
TEST_SECTION_NAME
)
world
.
scenario_dict
[
'SECTION'
]
=
world
.
ItemFactory
.
create
(
parent_location
=
world
.
scenario_dict
[
'COURSE'
]
.
location
,
display_name
=
'Test Section'
)
problem_section
=
world
.
ItemFactory
.
create
(
parent_location
=
section
.
location
,
problem_section
=
world
.
ItemFactory
.
create
(
parent_location
=
world
.
scenario_dict
[
'SECTION'
]
.
location
,
template
=
'i4x://edx/templates/sequential/Empty'
,
display_name
=
TEST_SECTION_NAME
)
display_name
=
'Test Section'
)
@step
(
u'I am registered for the course "([^"]*)"$'
)
...
...
@@ -53,7 +49,7 @@ def i_am_registered_for_the_course(step, course):
create_course
(
step
,
course
)
# Create the user
world
.
create_user
(
'robot'
)
world
.
create_user
(
'robot'
,
'test'
)
u
=
User
.
objects
.
get
(
username
=
'robot'
)
# If the user is not already enrolled, enroll the user.
...
...
@@ -71,24 +67,24 @@ def add_tab_to_course(step, course, extra_tab_name):
def
course_id
(
course_num
):
return
"
%
s/
%
s/
%
s"
%
(
TEST_COURSE_ORG
,
course_num
,
TEST_COURSE_NAME
.
replace
(
" "
,
"_"
))
return
"
%
s/
%
s/
%
s"
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
course_num
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
" "
,
"_"
))
def
course_location
(
course_num
):
return
Location
(
loc_or_tag
=
"i4x"
,
org
=
TEST_COURSE_ORG
,
org
=
world
.
scenario_dict
[
'COURSE'
]
.
org
,
course
=
course_num
,
category
=
'course'
,
name
=
TEST_COURSE_NAME
.
replace
(
" "
,
"_"
))
name
=
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
" "
,
"_"
))
def
section_location
(
course_num
):
return
Location
(
loc_or_tag
=
"i4x"
,
org
=
TEST_COURSE_ORG
,
org
=
world
.
scenario_dict
[
'COURSE'
]
.
org
,
course
=
course_num
,
category
=
'sequential'
,
name
=
TEST_SECTION_NAME
.
replace
(
" "
,
"_"
))
name
=
world
.
scenario_dict
[
'SECTION'
]
.
display_name
.
replace
(
" "
,
"_"
))
def
get_courses
():
...
...
lms/djangoapps/courseware/features/navigation.py
View file @
72c9a24d
...
...
@@ -8,8 +8,6 @@ from student.models import CourseEnrollment
from
common
import
course_id
,
course_location
from
problems_setup
import
PROBLEM_DICT
TEST_COURSE_ORG
=
'edx'
TEST_COURSE_NAME
=
'Test Course'
TEST_SECTION_NAME
=
'Test Section'
TEST_SUBSECTION_NAME
=
'Test Subsection'
...
...
@@ -18,11 +16,11 @@ TEST_SUBSECTION_NAME = 'Test Subsection'
def
view_course_multiple_sections
(
step
):
create_course
()
# Add a section to the course to contain problems
section1
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
'model_course'
),
section1
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
world
.
scenario_dict
[
'COURSE'
]
.
number
),
display_name
=
section_name
(
1
))
# Add a section to the course to contain problems
section2
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
'model_course'
),
section2
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
world
.
scenario_dict
[
'COURSE'
]
.
number
),
display_name
=
section_name
(
2
))
place1
=
world
.
ItemFactory
.
create
(
parent_location
=
section1
.
location
,
...
...
@@ -44,7 +42,7 @@ def view_course_multiple_subsections(step):
create_course
()
# Add a section to the course to contain problems
section1
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
'model_course'
),
section1
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
world
.
scenario_dict
[
'COURSE'
]
.
number
),
display_name
=
section_name
(
1
))
place1
=
world
.
ItemFactory
.
create
(
parent_location
=
section1
.
location
,
...
...
@@ -64,7 +62,7 @@ def view_course_multiple_subsections(step):
def
view_course_multiple_sequences
(
step
):
create_course
()
# Add a section to the course to contain problems
section1
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
'model_course'
),
section1
=
world
.
ItemFactory
.
create
(
parent_location
=
course_location
(
world
.
scenario_dict
[
'COURSE'
]
.
number
),
display_name
=
section_name
(
1
))
place1
=
world
.
ItemFactory
.
create
(
parent_location
=
section1
.
location
,
...
...
@@ -144,16 +142,14 @@ def subsection_name(section):
def
create_course
():
world
.
clear_courses
()
world
.
CourseFactory
.
create
(
org
=
TEST_COURSE_ORG
,
number
=
"model_course"
,
display_name
=
TEST_COURSE_NAME
)
world
.
scenario_dict
[
'COURSE'
]
=
world
.
CourseFactory
.
create
(
org
=
'edx'
,
number
=
'model_course'
,
display_name
=
'Test Course'
)
def
create_user_and_visit_course
():
world
.
create_user
(
'robot'
)
world
.
create_user
(
'robot'
,
'test'
)
u
=
User
.
objects
.
get
(
username
=
'robot'
)
CourseEnrollment
.
objects
.
get_or_create
(
user
=
u
,
course_id
=
course_id
(
"model_course"
))
CourseEnrollment
.
objects
.
get_or_create
(
user
=
u
,
course_id
=
course_id
(
world
.
scenario_dict
[
'COURSE'
]
.
number
))
world
.
log_in
(
'robot'
,
'test'
)
chapter_name
=
(
TEST_SECTION_NAME
+
"1"
)
.
replace
(
" "
,
"_"
)
...
...
lms/djangoapps/courseware/features/problems.py
View file @
72c9a24d
...
...
@@ -7,7 +7,7 @@ Steps for problem.feature lettuce tests
from
lettuce
import
world
,
step
from
lettuce.django
import
django_url
from
common
import
i_am_registered_for_the_course
,
TEST_SECTION_NAME
from
common
import
i_am_registered_for_the_course
from
problems_setup
import
PROBLEM_DICT
,
answer_problem
,
problem_has_answer
,
add_problem_to_course
from
nose.tools
import
assert_equal
...
...
@@ -17,15 +17,15 @@ def view_problem_with_attempts(step, problem_type, attempts):
i_am_registered_for_the_course
(
step
,
'model_course'
)
# Ensure that the course has this problem type
add_problem_to_course
(
'model_course'
,
problem_type
,
{
'attempts'
:
attempts
})
add_problem_to_course
(
world
.
scenario_dict
[
'COURSE'
]
.
number
,
problem_type
,
{
'attempts'
:
attempts
})
# Go to the one section in the factory-created course
# which should be loaded with the correct problem
chapter_name
=
TEST_SECTION_NAME
.
replace
(
" "
,
"_"
)
chapter_name
=
world
.
scenario_dict
[
'SECTION'
]
.
display_name
.
replace
(
" "
,
"_"
)
section_name
=
chapter_name
url
=
django_url
(
'/courses/
edx/model_course/Test_Course
/courseware/
%
s/
%
s'
%
(
chapter_name
,
section_name
))
url
=
django_url
(
'/courses/
%
s/
%
s/
%
s
/courseware/
%
s/
%
s'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
),
chapter_name
,
section_name
,))
world
.
browser
.
visit
(
url
)
...
...
@@ -38,11 +38,11 @@ def view_problem_with_show_answer(step, problem_type, answer):
# Go to the one section in the factory-created course
# which should be loaded with the correct problem
chapter_name
=
TEST_SECTION_NAME
.
replace
(
" "
,
"_"
)
chapter_name
=
world
.
scenario_dict
[
'SECTION'
]
.
display_name
.
replace
(
" "
,
"_"
)
section_name
=
chapter_name
url
=
django_url
(
'/courses/
edx/model_course/Test_Course
/courseware/
%
s/
%
s'
%
(
chapter_name
,
section_name
))
url
=
django_url
(
'/courses/
%
s/
%
s/
%
s
/courseware/
%
s/
%
s'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
),
chapter_name
,
section_name
,))
world
.
browser
.
visit
(
url
)
...
...
@@ -55,11 +55,11 @@ def view_problem(step, problem_type):
# Go to the one section in the factory-created course
# which should be loaded with the correct problem
chapter_name
=
TEST_SECTION_NAME
.
replace
(
" "
,
"_"
)
chapter_name
=
world
.
scenario_dict
[
'SECTION'
]
.
display_name
.
replace
(
" "
,
"_"
)
section_name
=
chapter_name
url
=
django_url
(
'/courses/
edx/model_course/Test_Course
/courseware/
%
s/
%
s'
%
(
chapter_name
,
section_name
))
url
=
django_url
(
'/courses/
%
s/
%
s/
%
s
/courseware/
%
s/
%
s'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
),
chapter_name
,
section_name
,))
world
.
browser
.
visit
(
url
)
...
...
lms/djangoapps/courseware/features/registration.py
View file @
72c9a24d
...
...
@@ -3,13 +3,12 @@
from
lettuce
import
world
,
step
from
lettuce.django
import
django_url
from
common
import
TEST_COURSE_ORG
,
TEST_COURSE_NAME
@step
(
'I register for the course "([^"]*)"$'
)
def
i_register_for_the_course
(
_step
,
course
):
cleaned_name
=
TEST_COURSE_NAME
.
replace
(
' '
,
'_'
)
url
=
django_url
(
'courses/
%
s/
%
s/
%
s/about'
%
(
TEST_COURSE_ORG
,
course
,
cleaned_name
))
cleaned_name
=
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
)
url
=
django_url
(
'courses/
%
s/
%
s/
%
s/about'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
course
,
cleaned_name
))
world
.
browser
.
visit
(
url
)
world
.
css_click
(
'section.intro a.register'
)
...
...
lms/djangoapps/courseware/features/video.py
View file @
72c9a24d
...
...
@@ -2,7 +2,7 @@
from
lettuce
import
world
,
step
from
lettuce.django
import
django_url
from
common
import
TEST_COURSE_NAME
,
TEST_SECTION_NAME
,
i_am_registered_for_the_course
,
section_location
from
common
import
i_am_registered_for_the_course
,
section_location
############### ACTIONS ####################
...
...
@@ -14,31 +14,31 @@ def does_autoplay(_step):
@step
(
'the course has a Video component'
)
def
view_video
(
_step
):
coursen
ame
=
TEST_COURSE_NAME
.
replace
(
' '
,
'_'
)
i_am_registered_for_the_course
(
step
,
coursen
ame
)
coursen
um
=
'test_course'
i_am_registered_for_the_course
(
step
,
coursen
um
)
# Make sure we have a video
add_video_to_course
(
coursen
ame
)
chapter_name
=
TEST_SECTION_NAME
.
replace
(
" "
,
"_"
)
add_video_to_course
(
coursen
um
)
chapter_name
=
world
.
scenario_dict
[
'SECTION'
]
.
display_name
.
replace
(
" "
,
"_"
)
section_name
=
chapter_name
url
=
django_url
(
'/courses/
edx/Test_Course/Test_Course
/courseware/
%
s/
%
s'
%
(
chapter_name
,
section_name
))
url
=
django_url
(
'/courses/
%
s/
%
s/
%
s
/courseware/
%
s/
%
s'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
),
chapter_name
,
section_name
,))
world
.
browser
.
visit
(
url
)
@step
(
'the course has a VideoAlpha component'
)
def
view_videoalpha
(
step
):
coursen
ame
=
TEST_COURSE_NAME
.
replace
(
' '
,
'_'
)
i_am_registered_for_the_course
(
step
,
coursen
ame
)
coursen
um
=
'test_course'
i_am_registered_for_the_course
(
step
,
coursen
um
)
# Make sure we have a videoalpha
add_videoalpha_to_course
(
coursen
ame
)
chapter_name
=
TEST_SECTION_NAME
.
replace
(
" "
,
"_"
)
add_videoalpha_to_course
(
coursen
um
)
chapter_name
=
world
.
scenario_dict
[
'SECTION'
]
.
display_name
.
replace
(
" "
,
"_"
)
section_name
=
chapter_name
url
=
django_url
(
'/courses/
edx/Test_Course/Test_Course
/courseware/
%
s/
%
s'
%
(
chapter_name
,
section_name
))
url
=
django_url
(
'/courses/
%
s/
%
s/
%
s
/courseware/
%
s/
%
s'
%
(
world
.
scenario_dict
[
'COURSE'
]
.
org
,
world
.
scenario_dict
[
'COURSE'
]
.
number
,
world
.
scenario_dict
[
'COURSE'
]
.
display_name
.
replace
(
' '
,
'_'
),
chapter_name
,
section_name
,))
world
.
browser
.
visit
(
url
)
...
...
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