Until we can figure out a solution or a method of testing the login that will work for multiple integration test suits running they should be disabled.
Port code and tests to Django 1.11.
* Update requirements to Django 1.11.14, remove session_csrf
* Use --run-syncdb for migration calls
* Remove unused setup-docker script
* Port code and tests to Django 1.11.
* Remove django-session-csrf everywhere, it got replaced by django's own
session csrf protection
* Make sure we are calling `client.get()` with `follow=True` where necessary
* Replace django.core.urlresolvers import with django.urls
* Port custom `IconWidgetRenderer` to Django 1.11 as `IconTypeSelect`
* Properly use `_queryset_class` for custom manager classes
* Make use of `base_manager_name` on our models `Meta` instead of `use_for_related_objects`
on the manager where appropriate. This is required to make translations, soft-delete
and more work. See comment on Addons.Meta for more details.
* Various fixes along the way to make tests work
* Port form errors for locale editing forms to Django 1.11 and make use of
form.add_error instead of our own custom process
* Mark TestDetailPage.test_304 as xfail for now, somehow Etags seem to be broken
for that view during tests but work fine in manual tests
* Fix amo.celery, we cannot have any imports at the module-level that may
import the ORM
* Fix global_settings context processor for 500-server error cases
* Fix `changed_data` handling in `AMOModelForm`
* Remove `queryset_transform` and implement it directly in amo/models
* Fix pagination, Django changed how `num_pages` work and how `count` can be overwritten
* Add a new test that tests database transforms as `BaseQuerysetTestCase`
* Make sure `legacy_redirect` only appends `?` if there are actual GET parameters
* Re-implement `LicenseRadioChoiceInput` as `LicenseRadioSelect` which is now Django 1.11 compatible
* Remove our custom `form_kwargs` uplift from Django 1.9
* Correct how we're using `Category.objects.create` and only pass `db_name` instead of `name`, previously
this didn't error but now it (luckily!) does
* Update `FileSelectWidget` to correctly work with Django 1.11, use custom rendering
* Fix decorator ordering for `files.views:browse`
* Update database settings to correctly use `TEST` object
* Fix `select_related` call in `RatingViewSet`
* Remove custom `DateTimeCast` implementation
* Fix `addon_factory` calls in `reviewers/tests/test_views.py` to correctly set
`is_webextension`
* Port our `TranslationDescriptor` and `TranslatedField` to Django 1.11. Also, make sure form error handling works
* Add a new test that checks that `default=None` is a valid setting for translation fields
* Add a new test that checks that translations from related fields are correctly fetched
* Remove possible ambiguity from translations `TestWidget` tests
* Make sure that the correct `MEDIA_URL` is set in `TestDownloadsUnlistedVersions` to fix
external cdn tests
* Remove custom happyforms code. Django cleans text fields now by default
* Move translations app to the top of INSTALLED_APPS, add a lengthy comment
* Pass additional arguments to contribute_to_class, fix smaller nits
* Set MEDIA_URL and STATIC_URL to an external value by default. That's how they're configured in dev, stage and prod anyway.
Please note that we didn't replace all our custom form rendering with proper templated widgets yet. This will
happening in some follow-up work.
Fixes#5271, Fixes#1569
This will simplify the upgrade to Django 1.11 and allow us to keep this
under control, upstream isn't properly maintained.
* Cleanup jingo-minify, keep only parts we are using. Cleanup tests
Also fix and simplify compress_assets to link to the correct /static/ folder.
Originally we hardcoded to look for settings.STATIC_ROOT but that
doesn't suffice since it's set to /site-static/ by default.
We are now using hardcoding the source of our static files instead of
guessing and mistakenly re-using STATIC_ROOT.
This commit also removes verbosity as an argument and simply logs all
errors immediately.
To simplify testing it adds a --force parameter.
To verify this works locally:
* Change settings.STATIC_ROOT to `'/site-static/`'
* Add `/site-static/` to the folders served by nginx (I'll open an issue
on our nginx container to serve this by default too)
* You may have to restart the nginx container after that for nginx to
pick things up
* Remove everything inside site-static folder
* Run `make update_assets`
Fixes#8532
This will simplify the upgrade to Django 1.11 and allow us to keep this
under control, upstream isn't properly maintained.
* Copies jingo-minify into our code
* Removed all parts we aren't using (yui, git integration, `{{ inline_css }}` template tag etc)
* Try to clean up how subprocess calls are being made
* Cleaned up tests
This doesn't change anything regarding how jingo-minify works. It's still using good old `cat` and other ugly things but the code now looks nicer.
See 742297fef9 for more specific details about the cleanup from the original jingo-minify dump.
Fixes#8532
* Port mozilla/amo-loadtest to FXA authentication and WebExtensions.
This is the first part of many to improve our load-tests and allow them
to be run regularly as part of a regression test suite.
This commit primarily ports the existing tests over to our repository,
updates them to use FxA authentication and uses a WebExtension for the
upload test.
This only implements the baseline for more work to come in #7744 but
it's important to have authentication and the basic infrastructure
working correctly.
It's also still using the legacy add-on detail and listing pages,
that'll obviously change - or be only true for SeaMonkey and Thunderbird
related tests since we still have to support them (very low priority though)
It also adds a first step of a summary report that links to new-relic.
That'll need a bit more tooling and testing but it worked quite well in
first tests.
Refs #7744
Next steps:
* Implement most of the read-only tests from #7744
* Check what needs auth in #7744, implement it properly
* Implement database and cache query logging
* Implement a unified merged test-report that uses the database and
cache query logging and merges it with locust logs (using our new
unique request id)
* Fix makefile, show dummy-usage for now.
* Delete generate-summary script for now
* Pin and cleanup dependencies
* Reverse all urls
* Use docker-compose>=1.18 and minimal docker-compose config version to 2.3
* Starts ui-tests in Firefox docker container
* Let's the Firefox docker-container hit directly nginx
* makes use of https://github.com/jrbenny35/selenium-firefox/ firefox+selenium image
* makes use of /user-media/ serving directly via nginx for XPI installs
* Adds a helper that creates an installable add-on
* Update `firefox_options` fixture with all options needed to install add-ons with a test signing signature
Fixes#7270Fixes#2488
* Pin all our dependencies, including pip, six, ipython and ipdb.
This removes all dynamically installed python packages from the
installation pipeline and should result in a cleaner system install.
Fixes#6001
* Cleanup docs, prod and merge a few dependencies with system.
* Move more dependencies from prod to system :-/
* Finally fix docs task
* Updated config to use circleci as well as configure ui-tests to run within docker
* Removed hacky certifi installs
* Update requirements to master versions
Fixes#4697 (though not only that)