Skip to content
Service providing access to consolidated course and program metadata
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.dev/volumes OEP-5 Compliance Sep 13, 2016
.travis Add draft_version column Apr 2, 2019
.tx Corrected app name Nov 25, 2015
acceptance_tests Re-ordered imports using isort Feb 13, 2017
course_discovery fix(i18n): update translations May 19, 2019
docs Add draft_version column Apr 2, 2019
requirements add django-compressor support May 6, 2019
.bowerrc Corrected app name Nov 25, 2015
.coveragerc Discovery drives the Masters Product Pages Details section. Aug 9, 2018
.dockerignore OEP-5 Compliance Sep 13, 2016
.gitignore Reorganizes the Degree tables. Jul 27, 2018
.isort.cfg Ignore auto-generated migrations. Aug 20, 2018
.pep8 Corrected app name Nov 25, 2015
.travis.yml Add draft_version column Apr 2, 2019
AUTHORS filter by subjects Aug 29, 2018
CONTRIBUTORS.txt Initial commit Nov 10, 2015
LICENSE Update and clean up README May 30, 2017
Makefile add django-compressor support May 6, 2019
README.rst add documentation for debugging Python unit tests Aug 29, 2018
api-compact.yaml Exposing limit and offset query string parameters in API gateway Oct 7, 2016
api.yaml Exposing limit and offset query string parameters in API gateway Oct 7, 2016
bower.json Adding tinymce for all text areas on course-detail and edit pages. Apr 8, 2017
codecov.yml Silence Codecov comments on PRs Jun 23, 2016
conftest.py Add pytest-xdist, use multiple procs to run tests. Aug 7, 2018
docker-compose.yml Update docker-compose to not include node_module Feb 8, 2018
gulpfile.js Added edx pattern library. Jul 19, 2016
manage.py Use course_discovery in preference to edx_course_discovery Nov 24, 2015
openedx.yaml Include this repo in Open edX tagging Jun 14, 2017
package-lock.json Update edx-lint to 0.5.5 Jan 29, 2018
package.json Installed Webpack Jul 20, 2017
pylintrc Upgrade edx-lint to 0.5.4 Apr 26, 2017
pylintrc_tweaks Add authoring organizations to programs in search results Aug 18, 2016
pytest-no-xdist.ini add documentation for debugging Python unit tests Aug 29, 2018
pytest.ini Add pytest-xdist, use multiple procs to run tests. Aug 7, 2018
requirements.txt Initial commit Nov 10, 2015
webpack.config.js Installed Webpack Jul 20, 2017

README.rst

Course Discovery Service Travis Codecov

Service providing access to consolidated course and program metadata.

Documentation

Documentation is hosted on Read the Docs. The source is hosted in this repo's docs directory. The docs are automatically rebuilt and redeployed when commits are merged to master. To contribute, please open a PR against this repo.

License

The code in this repository is licensed under version 3 of the AGPL unless otherwise noted. Please see the LICENSE file for details.

How To Contribute

Contributions are welcome. Please read How To Contribute for details. Even though it was written with edx-platform in mind, these guidelines should be followed for Open edX code in general.

Development

Is the build failing because translations are out of date?

Run make check_translations_up_to_date and check in the generated *.mo & *.po files to your PR.

Running Tests Locally, Fast

There is a test settings file course_discovery.settings.test_local that allows you to persist the test database between runs of the unittests (as long as you don't restart your container). It stores the SQLite database file at /dev/shm, which is a filesystem backed by RAM. Using this test file in conjunction with pytest's --reuse-db option can significantly cut down on local testing iteration time. You can use this as follows: pytest course_discovery/apps/course_metadata/tests/test_utils.py --ds=course_discovery.settings.test_local --reuse-db

The first run will incur the normal cost of database creation (typically around 30 seconds), but the second run will completely skip that startup cost, since the --reuse-db option causes pytest to use the already persisted database in the /dev/shm directory. If you need to change models or create databases between runs, you can tell pytest to recreate the database with -recreate-db.

Debugging Tests Locally

Pytest in this repository uses the pytest-xdist package for distributed testing. This is configured in the pytest.ini file. However, pytest-xdist does not support pdb.set_trace(). In order to use pdb when debugging Python unit tests, you can use the pytest-no-xdist.ini file instead. Use the -c option to the pytest command to specify which ini file to use.

For example,

pytest -c pytest-no-xdist.ini --ds=course_discovery.settings.test --durations=25 course_discovery/apps/publisher/tests/test_views.py::CourseRunDetailTests::test_detail_page_with_comments

Reporting Security Issues

Please do not report security issues in public. Please email security@edx.org.

Get Help

Ask questions and discuss this project on Slack or in the edx-code Google Group.

You can’t perform that action at this time.