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
b92d239e
Commit
b92d239e
authored
Oct 08, 2015
by
Christine Lytwynec
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #10081 from edx/clytwynec/update-bokchoy-0.4.6
Clytwynec/update bokchoy 0.4.6
parents
1030b277
5e133044
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
112 additions
and
97 deletions
+112
-97
common/test/acceptance/accessibility/__init__.py
+0
-0
common/test/acceptance/accessibility/test_lms_dashboard_a11y.py
+0
-28
common/test/acceptance/accessibility/test_studio_library_a11y.py
+0
-30
common/test/acceptance/tests/lms/test_lms_dashboard.py
+23
-0
common/test/acceptance/tests/studio/test_studio_library.py
+23
-0
common/test/acceptance/tests/video/test_studio_video_module.py
+63
-36
requirements/edx/base.txt
+1
-1
scripts/accessibility-tests.sh
+1
-1
scripts/generic-ci-tests.sh
+1
-1
No files found.
common/test/acceptance/accessibility/__init__.py
deleted
100644 → 0
View file @
1030b277
common/test/acceptance/accessibility/test_lms_dashboard_a11y.py
deleted
100644 → 0
View file @
1030b277
"""
Accessibility tests for LMS dashboard page.
Run just this test with:
SELENIUM_BROWSER=phantomjs paver test_bokchoy -d accessibility -t test_lms_dashboard_a11y.py
"""
from
..tests.lms.test_lms_dashboard
import
BaseLmsDashboardTest
class
LmsDashboardAxsTest
(
BaseLmsDashboardTest
):
"""
Class to test lms student dashboard accessibility.
"""
def
test_dashboard_course_listings_axs
(
self
):
"""
Test the accessibility of the course listings
"""
course_listings
=
self
.
dashboard_page
.
get_course_listings
()
self
.
assertEqual
(
len
(
course_listings
),
1
)
# There are several existing color contrast errors on this page,
# we will ignore this error in the test until we fix them.
self
.
dashboard_page
.
a11y_audit
.
config
.
set_rules
({
"ignore"
:
[
'color-contrast'
],
})
self
.
dashboard_page
.
a11y_audit
.
check_for_accessibility_errors
()
common/test/acceptance/accessibility/test_studio_library_a11y.py
deleted
100644 → 0
View file @
1030b277
"""
Accessibility tests for Studio Library pages.
Run just this test with:
SELENIUM_BROWSER=phantomjs paver test_bokchoy -d accessibility -t test_studio_library_a11y.py
"""
from
..tests.studio.base_studio_test
import
StudioLibraryTest
from
..pages.studio.library
import
LibraryEditPage
class
StudioLibraryAxsTest
(
StudioLibraryTest
):
"""
Class to test Studio pages accessibility.
"""
def
test_lib_edit_page_axs
(
self
):
"""
Check accessibility of LibraryEditPage.
"""
lib_page
=
LibraryEditPage
(
self
.
browser
,
self
.
library_key
)
lib_page
.
visit
()
lib_page
.
wait_until_ready
()
# There are several existing color contrast errors on this page,
# we will ignore this error in the test until we fix them.
lib_page
.
a11y_audit
.
config
.
set_rules
({
"ignore"
:
[
'color-contrast'
],
})
lib_page
.
a11y_audit
.
check_for_accessibility_errors
()
common/test/acceptance/tests/lms/test_lms_dashboard.py
View file @
b92d239e
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
End-to-end tests for the main LMS Dashboard (aka, Student Dashboard).
End-to-end tests for the main LMS Dashboard (aka, Student Dashboard).
"""
"""
import
datetime
import
datetime
from
nose.plugins.attrib
import
attr
from
..helpers
import
UniqueCourseTest
from
..helpers
import
UniqueCourseTest
from
...fixtures.course
import
CourseFixture
from
...fixtures.course
import
CourseFixture
...
@@ -217,3 +218,25 @@ class LmsDashboardPageTest(BaseLmsDashboardTest):
...
@@ -217,3 +218,25 @@ class LmsDashboardPageTest(BaseLmsDashboardTest):
# Test that proper course date with 'starts' message is displayed if a course is about to start in future,
# Test that proper course date with 'starts' message is displayed if a course is about to start in future,
# and course starts within 5 days
# and course starts within 5 days
self
.
assertEqual
(
course_date
,
expected_course_date
)
self
.
assertEqual
(
course_date
,
expected_course_date
)
@attr
(
'a11y'
)
class
LmsDashboardA11yTest
(
BaseLmsDashboardTest
):
"""
Class to test lms student dashboard accessibility.
"""
def
test_dashboard_course_listings_a11y
(
self
):
"""
Test the accessibility of the course listings
"""
course_listings
=
self
.
dashboard_page
.
get_course_listings
()
self
.
assertEqual
(
len
(
course_listings
),
1
)
# There are several existing color contrast errors on this page,
# we will ignore this error in the test until we fix them.
self
.
dashboard_page
.
a11y_audit
.
config
.
set_rules
({
"ignore"
:
[
'color-contrast'
],
})
self
.
dashboard_page
.
a11y_audit
.
check_for_accessibility_errors
()
common/test/acceptance/tests/studio/test_studio_library.py
View file @
b92d239e
...
@@ -637,3 +637,26 @@ class LibraryUsersPageTest(StudioLibraryTest):
...
@@ -637,3 +637,26 @@ class LibraryUsersPageTest(StudioLibraryTest):
self
.
assertEqual
(
len
(
self
.
page
.
users
),
1
)
self
.
assertEqual
(
len
(
self
.
page
.
users
),
1
)
user
=
self
.
page
.
users
[
0
]
user
=
self
.
page
.
users
[
0
]
self
.
assertTrue
(
user
.
is_current_user
)
self
.
assertTrue
(
user
.
is_current_user
)
@attr
(
'a11y'
)
class
StudioLibraryA11yTest
(
StudioLibraryTest
):
"""
Class to test Studio pages accessibility.
"""
def
test_lib_edit_page_a11y
(
self
):
"""
Check accessibility of LibraryEditPage.
"""
lib_page
=
LibraryEditPage
(
self
.
browser
,
self
.
library_key
)
lib_page
.
visit
()
lib_page
.
wait_until_ready
()
# There are several existing color contrast errors on this page,
# we will ignore this error in the test until we fix them.
lib_page
.
a11y_audit
.
config
.
set_rules
({
"ignore"
:
[
'color-contrast'
],
})
lib_page
.
a11y_audit
.
check_for_accessibility_errors
()
common/test/acceptance/tests/video/test_studio_video_module.py
View file @
b92d239e
...
@@ -3,6 +3,9 @@
...
@@ -3,6 +3,9 @@
"""
"""
Acceptance tests for CMS Video Module.
Acceptance tests for CMS Video Module.
"""
"""
import
os
from
mock
import
patch
from
nose.plugins.attrib
import
attr
from
nose.plugins.attrib
import
attr
from
unittest
import
skipIf
from
unittest
import
skipIf
from
...pages.studio.auto_auth
import
AutoAuthPage
from
...pages.studio.auto_auth
import
AutoAuthPage
...
@@ -42,6 +45,38 @@ class CMSVideoBaseTest(UniqueCourseTest):
...
@@ -42,6 +45,38 @@ class CMSVideoBaseTest(UniqueCourseTest):
)
)
self
.
assets
=
[]
self
.
assets
=
[]
self
.
addCleanup
(
YouTubeStubConfig
.
reset
)
def
_create_course_unit
(
self
,
youtube_stub_config
=
None
,
subtitles
=
False
):
"""
Create a Studio Video Course Unit and Navigate to it.
Arguments:
youtube_stub_config (dict)
subtitles (bool)
"""
if
youtube_stub_config
:
YouTubeStubConfig
.
configure
(
youtube_stub_config
)
if
subtitles
:
self
.
assets
.
append
(
'subs_3_yD_cEKoCk.srt.sjson'
)
self
.
navigate_to_course_unit
()
def
_create_video
(
self
):
"""
Create Xblock Video Component.
"""
self
.
video
.
create_video
()
video_xblocks
=
self
.
video
.
xblocks
()
# Total video xblock components count should be equals to 2
# Why 2? One video component is created by default for each test. Please see
# test_studio_video_module.py:CMSVideoTest._create_course_unit
# And we are creating second video component here.
self
.
assertTrue
(
video_xblocks
==
2
)
def
_install_course_fixture
(
self
):
def
_install_course_fixture
(
self
):
"""
"""
...
@@ -132,42 +167,6 @@ class CMSVideoTest(CMSVideoBaseTest):
...
@@ -132,42 +167,6 @@ class CMSVideoTest(CMSVideoBaseTest):
CMS Video Test Class
CMS Video Test Class
"""
"""
def
setUp
(
self
):
super
(
CMSVideoTest
,
self
)
.
setUp
()
self
.
addCleanup
(
YouTubeStubConfig
.
reset
)
def
_create_course_unit
(
self
,
youtube_stub_config
=
None
,
subtitles
=
False
):
"""
Create a Studio Video Course Unit and Navigate to it.
Arguments:
youtube_stub_config (dict)
subtitles (bool)
"""
if
youtube_stub_config
:
YouTubeStubConfig
.
configure
(
youtube_stub_config
)
if
subtitles
:
self
.
assets
.
append
(
'subs_3_yD_cEKoCk.srt.sjson'
)
self
.
navigate_to_course_unit
()
def
_create_video
(
self
):
"""
Create Xblock Video Component.
"""
self
.
video
.
create_video
()
video_xblocks
=
self
.
video
.
xblocks
()
# Total video xblock components count should be equals to 2
# Why 2? One video component is created by default for each test. Please see
# test_studio_video_module.py:CMSVideoTest._create_course_unit
# And we are creating second video component here.
self
.
assertTrue
(
video_xblocks
==
2
)
def
test_youtube_stub_proxy
(
self
):
def
test_youtube_stub_proxy
(
self
):
"""
"""
Scenario: YouTube stub server proxies YouTube API correctly
Scenario: YouTube stub server proxies YouTube API correctly
...
@@ -320,3 +319,31 @@ class CMSVideoTest(CMSVideoBaseTest):
...
@@ -320,3 +319,31 @@ class CMSVideoTest(CMSVideoBaseTest):
self
.
save_unit_settings
()
self
.
save_unit_settings
()
self
.
video
.
click_player_button
(
'play'
)
self
.
video
.
click_player_button
(
'play'
)
@attr
(
'a11y'
)
class
CMSVideoA11yTest
(
CMSVideoBaseTest
):
"""
CMS Video Accessibility Test Class
"""
def
setUp
(
self
):
browser
=
os
.
environ
.
get
(
'SELENIUM_BROWSER'
,
'firefox'
)
# the a11y tests run in CI under phantomjs which doesn't
# support html5 video or flash player, so the video tests
# don't work in it. We still want to be able to run these
# tests in CI, so override the browser setting if it is
# phantomjs.
if
browser
==
'phantomjs'
:
browser
=
'firefox'
with
patch
.
dict
(
os
.
environ
,
{
'SELENIUM_BROWSER'
:
browser
}):
super
(
CMSVideoA11yTest
,
self
)
.
setUp
()
def
test_video_player_a11y
(
self
):
# Limit the scope of the audit to the video player only.
self
.
outline
.
a11y_audit
.
config
.
set_scope
(
include
=
[
"div.video"
])
self
.
_create_course_unit
()
self
.
outline
.
a11y_audit
.
check_for_accessibility_errors
()
requirements/edx/base.txt
View file @
b92d239e
...
@@ -119,7 +119,7 @@ django_debug_toolbar==1.3.2
...
@@ -119,7 +119,7 @@ django_debug_toolbar==1.3.2
# Used for testing
# Used for testing
astroid==1.3.8
astroid==1.3.8
bok-choy==0.4.
5
bok-choy==0.4.
6
chrono==1.0.2
chrono==1.0.2
coverage==4.0
coverage==4.0
ddt==0.8.0
ddt==0.8.0
...
...
scripts/accessibility-tests.sh
View file @
b92d239e
...
@@ -3,4 +3,4 @@ echo "Setting up for accessibility tests..."
...
@@ -3,4 +3,4 @@ echo "Setting up for accessibility tests..."
source
scripts/jenkins-common.sh
source
scripts/jenkins-common.sh
echo
"Running explicit accessibility tests..."
echo
"Running explicit accessibility tests..."
SELENIUM_BROWSER
=
phantomjs paver test_bokchoy
-
d
accessibility
SELENIUM_BROWSER
=
phantomjs paver test_bokchoy
-
-extra_args
=
"-a 'a11y'"
scripts/generic-ci-tests.sh
View file @
b92d239e
...
@@ -172,7 +172,7 @@ END
...
@@ -172,7 +172,7 @@ END
;;
;;
"7"
)
"7"
)
paver test_bokchoy
--extra_args
=
"-a shard_1=False,shard_2=False,shard_3=False,shard_4=False,shard_5=False,shard_6=False --with-flaky"
paver test_bokchoy
--extra_args
=
"-a shard_1=False,shard_2=False,shard_3=False,shard_4=False,shard_5=False,shard_6=False
,a11y=False
--with-flaky"
;;
;;
# Default case because if we later define another bok-choy shard on Jenkins
# Default case because if we later define another bok-choy shard on Jenkins
...
...
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