Not an issue for our tests on firefox 28; however, once we upgrade to
Firefox 42 (or later), a new wait condition is needed here. Otherwise,
the content is not set because selenium's action chain is starting too
early.
This action chain is not reliable across firefox versions (and
in fact, even on the older firefox, fails locally). Instead we
use native JS tinymce to set the content.
On the older firefox version (28), the offset approach fails. This
update is being made as part of an effort to upgrade to firefox 42
incrementally. So we are including logic for Firefox 28 vs 42 that
we can remove after the upgrade.
Firefox 42 is faster than the version we're currently using for platform tests. This failure
occurs in the brief amount of time where the teams page is reloading. Waiting for the actual
team list to appear before moving on with tests solves the issue. Approx 4 testcases are fixed.
Below is an example of error that was appearing in firefox 42 tests:
```
Error Message
Not on the correct page to use '<common.test.acceptance.pages.studio.users.CourseTeamPage object at 0x7feb9fdb0490>' at URL 'http://localhost:8031/course_team/course-v1:test_org+321550032104190792981383915127220335686+test_run'
-------------------- >> begin captured logging << --------------------
bok_choy.browser: INFO: Using local browser: firefox [Default is firefox]
--------------------- >> end captured logging << ---------------------
Stacktrace
File "/usr/lib/python2.7/unittest/case.py", line 331, in run
testMethod()
File "/home/jenkins/workspace/edx-platform-test-subset/common/test/acceptance/tests/studio/test_studio_course_team.py", line 147, in test_added_users_cannot_add_or_delete_other_users
self._assert_user_present(self.other_user, present=True)
File "/home/jenkins/workspace/edx-platform-test-subset/common/test/acceptance/tests/studio/test_studio_course_team.py", line 78, in _assert_user_present
description="Wait for user to be present"
File "/home/jenkins/edx-venv/local/lib/python2.7/site-packages/bok_choy/page_object.py", line 490, in wait_for
return EmptyPromise(promise_check_func, description, timeout=timeout).fulfill()
File "/home/jenkins/edx-venv/local/lib/python2.7/site-packages/bok_choy/promise.py", line 92, in fulfill
is_fulfilled, result = self._check_fulfilled()
File "/home/jenkins/edx-venv/local/lib/python2.7/site-packages/bok_choy/promise.py", line 118, in _check_fulfilled
is_fulfilled, result = self._check_func()
File "/home/jenkins/edx-venv/local/lib/python2.7/site-packages/bok_choy/promise.py", line 173, in <lambda>
full_check_func = lambda: (check_func(), None)
File "/home/jenkins/workspace/edx-platform-test-subset/common/test/acceptance/tests/studio/test_studio_course_team.py", line 77, in <lambda>
lambda: user.get('username') in self.page.usernames,
File "/home/jenkins/edx-venv/local/lib/python2.7/site-packages/bok_choy/page_object.py", line 66, in wrapper
self._verify_page() # pylint: disable=protected-access
File "/home/jenkins/edx-venv/local/lib/python2.7/site-packages/bok_choy/page_object.py", line 331, in _verify_page
raise WrongPageError(msg)
"Not on the correct page to use '<common.test.acceptance.pages.studio.users.CourseTeamPage object at 0x7feb9fdb0490>' at URL 'http://localhost:8031/course_team/course-v1:test_org+321550032104190792981383915127220335686+test_run'\n-------------------- >> begin captured logging << --------------------\nbok_choy.browser: INFO: Using local browser: firefox [Default is firefox]\n--------------------- >> end captured logging << ---------------------"
```
added unit tests and fixed JS tests
added bok choy tests
fixed broken botchoy tests
fixed course discovery broken test
removed monkey patch at class level
changes after feedback from matte
Changed 'forceRoundTime' to 'false' in BaseDateEditor
Updated bok choy acceptance test 'studio.test_studio_outline.py:EditingSectionsTest.test_can_edit_subsections' to check times aren't rounded to the nearest half hour after saving
Also added myself to AUTHORS
The Programs authoring app is a Backbone SPA maintained in a separate repository. The app handles its own routing and provides a UI which can be used to create and publish new Programs (e.g, XSeries). ECOM-2598.
Extends the Programs ConfigurationModel, cleans up Programs-related utilities and corresponding tests, and corrects caching. Uses the Programs API to list programs within Studio. ECOM-2769.
* We do not need to click the upload button twice (typo?)
* Using a non-unique name for the upload image is causing GridFS indexing errors when
run too closely together (which happens with Chrome's speed)
This was originally contributed upstream by Stanford, circa 2013.
We neither use nor support this feature in its current implementation,
and in fact, we may never have used this production. Until recently, we
had additional chat/Jabber code [1] (in the form of a Jabber djangoapp in
LMS); context there suggests this feature may have never been more than
a prototype. The original author is no longer on the team, so I can't directly
confirm this on our end.
Do you use this feature?
Stanford had already abandoned this Jabber-backed chat implementation,
in favor of an IRC backend, by the time I joined the team in early 2014.
[1] dbe52a6b13
TNL-3296 would have been prevented with this test, adding it now to
prevent similar issues in the future. Squashed commit with doc changes,
review feedback, and run-20-times-to-ensure-not-flaky-then-unmark
all included.