Commit Graph

304 Commits

Author SHA1 Message Date
Usama Sadiq
484cd536e2 fix: Fixed new pylint warnings (#28724) 2021-09-23 17:54:04 +05:00
M. Zulqarnain
8142e631fc build: Quality on GH Actions (#28561) 2021-09-22 13:24:18 +05:00
Braden MacDonald
da09bcadc5 refactor: run modulestore tests in common/lib/... using Django
Does 3 things:
(1) Use django for modulestore tests
(2) Use normal LMS settings for modulestore tests instead of openedx/tests/settings.py
(3) Simplify some TestCase subclasses by converting them to use ModuleStoreTestCase


Details and rationale:

(1) Currently parts of the modulestore test suite are designed to run "without django", although there is still a lot of django functionality imported at times, and many of the tests do in fact use django. But for the upcoming PR #27565 (moving split's course indexes from MongoDB to MySQL), we will need to always have Django enabled. So this commit paves the way for that change.

(2) The previous tests that did use Django used a special settings file, openedx/tests/settings.py which made some debugging confusing because those tests had quite different django settings than other tests. This change deletes that file and runs the tests using the LMS test settings.

(3) The test suite also contains many different ways of initializing and testing a modulestore, with significant differences in their configuration, and also a lot of repetition. I find this makes understanding, debugging and writing tests more difficult. So this commit also reduces the number of different "test case using modulestore" base classes:

* Simplifies MixedWithOptionsTestCase and MixedSplitTestCase by making them simple subclasses of ModuleStoreTestCase.
* Removes PureModulestoreTestCase.
2021-08-05 12:20:19 -07:00
Usama Sadiq
1795008686 fix: Removed pylint constraint (#28222)
Disabled pylint warnings in pylint_tweaks
2021-07-23 18:35:57 +05:00
Muhammad Soban Javed
15fae139c0 feat: run a11y test using github actions (#27748) 2021-06-10 17:52:43 +05:00
Usama Sadiq
4f4be6538a BOM-2477: pylint warnings lint-amnesty (#27585) 2021-05-11 17:22:40 +05:00
M. Zulqarnain
2c44315ce0 refactor: pyupgrade on pavelib & scripts (#26769) 2021-03-12 14:14:53 +05:00
M. Zulqarnain
e35d3de376 refactor: pyupgrade on docs & pavelib (#26768) 2021-03-05 15:24:59 +05:00
Usman Khalid
6af0eb5c28 test: Ignore running tests from /common/lib/pytest_cache. 2021-03-02 23:55:48 +05:00
Jawayria
d1c21db40f Resolved error 2021-02-02 21:20:41 +05:00
Jawayria
69e0dc7d68 Applied pylint-amnesty to {docs, import_shims, pavelib} 2021-02-02 21:17:16 +05:00
Nizar
1e872d4e10 Adds support for enabling custom tinymce plugins in Studio's HTML editor (#25695) 2021-01-11 11:28:20 -05:00
Tim McCormack
747b03febf Use node for running node.js tests, not nodejs (#25651)
This should solve the problem of getting `nodejs: not found` when
running `paver test_js_run -s lms` in lms-shell, which cropped up in
the past few days.

I don't know why this stopped working recently, but I don't have `nodejs`
on my recently re-created devstack, and some people with an older devstack
have both. Maybe a recent node.js release got rid of an alias.
2020-11-19 20:09:51 +00:00
emzubair
169b82261a [BD-18] Optimize paver settings call 2020-08-21 21:23:29 +05:00
M. Zulqarnain
bc568309ec BOM-1701: Ran pyupgrade on pavelib (#24230) 2020-06-17 17:09:38 +05:00
Adam Stankiewicz
6d942bc94d revert learner portal links blocking juniper release 2020-05-04 14:55:06 -04:00
Aarif
98af9ce418 remove useless-supression warnings 2020-05-01 19:42:15 +05:00
Robert Raposa
5de9eed420 ARCHBOM-1093: Fix unit test enable-migrations (#23789)
* fix old migrations
* fix a test
* fix enable-migrations cmd argument
* enhance verbose logging to log migrations
* update testing doc with help
2020-04-23 14:04:29 -04:00
Aarif
6ee2089077 fixed warnings for wrong-import-order 2020-04-08 23:43:06 +05:00
Calen Pennington
646cf1ed12 Replace old coverage context files when uploading 2020-02-12 11:29:32 -05:00
Feanil Patel
6e3fe00fff Fix all E303 pep8 errors. 2019-12-30 12:25:38 -05:00
Feanil Patel
9cf2f9f298 Run 2to3 -f future . -w
This will remove imports from __future__ that are no longer needed.

https://docs.python.org/3.5/library/2to3.html#2to3fixer-future
2019-12-30 10:35:30 -05:00
Jeremy Bowman
63574e12b8 Remove pytest version constraint (#22626)
Fix the issue that was preventing us from upgrading pytest.  pytest does some manipulation of test packages that prevents `pkg_resources` from loading resources from them, but used to contain a workaround for the problem.  That workaround was [removed](https://github.com/pytest-dev/pytest/issues/5392) in 4.6.0 as a performance enhancement when pytest switched from `pkg_resources` to `importlib-metadata` for its own entrypoint handling.  This tripped up one of our test modules which defined classes that loaded templates from inside a test package.  Moving these resources to the parent package fixes the problem.

More and more, `pkg_resources` is being abandoned in favor of `importlib-metadata` and `importlib_resources` as they have a simpler design with much better performance.  However, `importlib_resources` doesn't support loading files from any directory which isn't itself a Python package (and doesn't allow direct use of paths including directories within the package).  Jinja2 chose a [different approach](https://github.com/pallets/jinja/pull/1082) that we may want to emulate in our resource handling.

Also fixed usage of a removed `pytest.raises()` parameter and a bug in our configuration of the `common/lib` tests that became a problem after the upgrade.
2019-12-30 09:10:57 -05:00
Jeremy Bowman
052f853ec1 Fix Jenkins virtualenv cleanup (#22356) 2019-11-21 11:05:05 -05:00
Feanil Patel
e863c50054 Fix pep 8 violations. 2019-11-06 13:39:07 -05:00
Jeremy Bowman
a6b8cbe627 Remove obsolete field type BOM-996 (#22203) 2019-10-31 15:23:58 -04:00
Feanil Patel
5bfdcad0f5 Make settings regex non greedy.
I'm surprised this didn't cause an issue before but as far as I can
figure this should always be non-greedy.  I think it worked before
because the items we were looking for was previously the last item
in the list but that is no longer the case in python 3 because of
dictionary order changes.
2019-10-22 14:19:42 -04:00
Brittney Exline
6e2887f851 Add enterprise portal links to user dropdown menu and dashboard alerts. (#21833) 2019-10-09 16:01:41 -04:00
Jeremy Bowman
6f3e1e7e3d Fix remaining pavelib test failures BOM-598 (#21819) 2019-09-27 10:52:22 -04:00
Feanil Patel
61544f0e2c Fix paver for python 3. 2019-09-12 10:17:25 -04:00
Feanil Patel
f2445cfe36 Turn off hash randomization on the xdist workers as well. 2019-09-06 17:04:17 -04:00
Calen Pennington
b7f3223ea4 Set a specific WTW context to name coverage files to upload/download from s3 2019-08-16 12:57:19 -04:00
Calen Pennington
98f740f71a Merge pull request #21270 from cpennington/upload-correct-coverage-file
Upload the coverage report from reports/${TEST_SUITE}.coverage
2019-08-05 10:47:48 -04:00
Calen Pennington
ea8c8e8348 Test the django admin view, and that it can be loaded 2019-08-02 13:27:16 -04:00
Calen Pennington
8f457d2045 Upload the coverage report from reports/${TEST_SUITE}.coverage 2019-07-31 14:55:30 -04:00
Calen Pennington
d0b160888b Archive all coverage reports, named by test context 2019-07-30 15:18:25 -04:00
Calen Pennington
5025567711 Add paver commands and environment variables to capture and run coverage-driven test selection 2019-07-24 12:06:07 -04:00
Calen Pennington
1823d9f098 Add django app for running Coverage who-tests-what in bokchoy 2019-07-24 10:13:46 -04:00
Ned Batchelder
83f66af978 Merge pull request #21138 from edx/nedbat/master-wtw
Who-tests-what, rebased onto master, with make upgrade
2019-07-23 11:48:47 -04:00
aarif
0f3cc01f59 ran python-modernize and isort on files mentioned in INCR-390
ran python-modernize and isort on files mentioned in INCR-390

ran python-modernize and isort on files mentioned in INCR-390

ran python-modernize and isort on files mentioned in INCR-390

ran python-modernize and isort on files mentioned in INCR-390

ran python-modernize and isort on files mentioned in INCR-390

ran python-modernize and isort on files mentioned in INCR-390

ran python-modernize and isort on files mentioned in INCR-390
2019-07-22 13:40:35 +05:00
Ned Batchelder
12ca7b8ab7 Name coverage data files so they won't overwrite each other. 2019-07-20 12:21:05 -04:00
Feanil Patel
a781523c91 Convert what's left of pavelib. 2019-07-17 12:26:21 -04:00
Ayub
08e793147d Merge pull request #21040 from edx/INCR-388
INCR-388 python3 compatibility
2019-07-17 18:56:28 +05:00
Ayub khan
07f907ec56 INCR-388 python3 compatibility 2019-07-15 13:15:11 +05:00
arbisoft
f6a8894803 Fixing python-modernize issues. 2019-07-10 17:32:32 +05:00
Michael Youngstrom
139cdb8ba2 Switch testing from ecs to ec2 (#20846) 2019-06-27 22:04:02 -04:00
Jeremy Bowman
c1c4cf5bf7 Remove more unused pa11ycrawler code (#20690) 2019-05-24 15:22:08 -04:00
Jeremy Bowman
a9cd9de89f TE-2647 Stop running pa11ycrawler (#20682) 2019-05-24 11:02:49 -04:00
bmedx
e11e062292 Mock CourseEnrollment history for test performance 2019-05-06 18:03:41 -04:00
Michael Youngstrom
bfe10720c6 Remove lettuce infrastructure 2019-04-18 09:58:21 -04:00