Preston Timmons
655f524915
Fixed #17085 , #24783 -- Refactored template library registration.
...
* Converted the ``libraries`` and ``builtins`` globals of
``django.template.base`` into properties of the Engine class.
* Added a public API for explicit registration of libraries and builtins.
2015-05-21 09:12:06 -05:00
Simon Charette
c15b0c2792
Fixed #24652 -- Disallowed query execution in SimpleTestCase subclasses.
...
Thanks to Tim and Anssi for the review.
2015-05-20 12:50:41 -04:00
Tim Graham
e89c3a4603
Added backwards compatibility for assertRaisesMessage callable_obj param.
...
This was broken in c2bc1cefdc
(refs #23763 ).
2015-05-18 10:04:18 -04:00
Aymeric Augustin
ed83881e64
Fixed #23820 -- Supported per-database time zone.
...
The primary use case is to interact with a third-party database (not
primarily managed by Django) that doesn't support time zones and where
datetimes are stored in local time when USE_TZ is True.
Configuring a PostgreSQL database with the TIME_ZONE option while USE_TZ
is False used to result in silent data corruption. Now this is an error.
2015-05-17 09:40:28 +02:00
Tim Graham
c2bc1cefdc
Refs #23763 -- Silenced SimpleTestCase.assertRaisesMessage() deprecation warning on Python 3.5.
...
Deprecation warning was introduced in https://bugs.python.org/issue24134
2015-05-16 10:42:12 -04:00
Piotr Jakimiak
4157c502a5
Removed unnecessary arguments in .get method calls
2015-05-13 20:51:18 +02:00
Tim Graham
8efea1b8d5
Fixed #24526 -- Combined django.request/security loggers with the root logger.
...
Thanks Carl Meyer for review.
2015-04-24 11:07:42 -04:00
Simon Charette
dc27f3ee0c
Fixed #19259 -- Added group by selected primary keys support.
2015-03-29 22:03:30 -04:00
Claude Paroz
a0c2eb46dd
Fixed #23960 -- Removed http.fix_location_header
...
Thanks Carl Meyer for the report and Tim Graham for the review.
2015-03-18 18:22:50 +01:00
Bas Peschier
0339844b70
Fixed #24476 -- Added context manager/decorator for overriding script prefix.
...
Tests were using an undocumented keyword argument for easily overriding
script prefix while reversing. This is now changed into a test utility
which can be used as decorator or context manager.
2015-03-18 13:03:25 -04:00
Claude Paroz
23c612199a
Simplified emit_post_migrate from flush command
...
Follow-up of f4f24d30e0
.
2015-02-28 16:10:32 +01:00
Aymeric Augustin
15b711b5ee
Deprecated TEMPLATE_DEBUG setting.
2015-02-15 20:47:04 +01:00
Tim Graham
0ed7d15563
Sorted imports with isort; refs #23860 .
2015-02-06 08:16:28 -05:00
Tim Graham
bbe28496d3
Removed old import aliases.
2015-02-05 19:37:01 -05:00
Aymeric Augustin
146dd7be8d
Called parent in SimpleTestCase.setUpClass/tearDownClass.
2015-02-05 21:27:25 +01:00
mlavin
2730dad0d7
Fixed #24197 -- Added clearing of staticfiles caches on settings changes during tests
...
Cleared caching in staticfiles_storage and get_finder when
relevant settings are changed.
2015-02-04 10:53:04 -05:00
Aymeric Augustin
2133f3157e
Fixed #24168 -- Allowed selecting a template engine in a few APIs.
...
Specifically in rendering shortcuts, template responses, and class-based
views that return template responses.
Also added a test for render_to_response(status=...) which was missing
from fdbfc980
.
Thanks Tim and Carl for the review.
2015-02-03 08:29:45 +01:00
Tim Graham
5fb582d952
Removed test.utils.TestTemplateLoader per deprecation timeline.
2015-01-18 14:19:14 -05:00
Marc Tamlyn
b5c1a85b50
Fixed #24118 -- Added --debug-sql option for tests.
...
Added a --debug-sql option for tests and runtests.py which outputs the
SQL logger for failing tests. When combined with --verbosity=2, it also
outputs the SQL for passing tests.
Thanks to Berker, Tim, Markus, Shai, Josh and Anssi for review and
discussion.
2015-01-12 08:16:08 +00:00
Claude Paroz
3bac904607
Removed extraneous super call in LiveServerTestCase
...
Refs #21281 . Thanks Tim Graham and Thomas Chaumeny for investigations.
2015-01-03 10:13:20 +01:00
Claude Paroz
66f9a74b45
Added ignore_warnings decorator
...
And removed Ignore*DeprecationWarningsMixin, now obsolete.
Thanks Berker Peksag and Tim Graham for the review.
2014-12-30 18:16:25 +01:00
Andriy Sokolovskiy
8c99b7920e
Fixed #12118 -- Added shared cache support to SQLite in-memory testing.
2014-12-30 10:14:33 -05:00
Aymeric Augustin
1acfd624d6
Added initial support for loading template engines.
2014-12-28 16:08:31 +01:00
Collin Anderson
5dddd79433
Fixed #20349 -- Moved setting_changed signal to django.core.signals.
...
This removes the need to load django.test when not testing.
2014-12-24 07:18:43 -05:00
Thomas Chaumeny
994d6137a2
Fixed #23792 -- Added test.utils.freeze_time() context manager.
2014-12-22 07:46:40 -05:00
Thomas Chaumeny
2ca0870b67
Fixed #23992 -- Optimized reorder_suite functions using OrderedSet
2014-12-14 13:38:01 +01:00
Thomas Chaumeny
119154ca7f
Refs #20392 -- Load fixtures once within TestCase
2014-12-12 09:16:15 -05:00
Jon Dufresne
4468c08d70
Fixed #23968 -- Replaced list comprehension with generators and dict comprehension
2014-12-08 07:58:23 -05:00
Diego Guimarães
9f427617e4
Refs #23947 -- Worked around a bug in Python that prevents deprecation warnings from appearing in tests.
2014-12-06 14:46:01 -05:00
Aymeric Augustin
4832320e8d
Updated obsolete comment.
2014-12-06 20:39:53 +01:00
Thomas Tanner
018d110ef5
Fixed #23911 -- Added support for buffer file uploads in the test client
2014-12-04 07:42:03 -05:00
Thomas Chaumeny
da9fe5c717
Fixed #20392 -- Added TestCase.setUpTestData()
...
Each TestCase is also now wrapped in a class-wide transaction.
2014-12-03 10:37:04 -05:00
Tim Graham
82e4f956e3
Fixed #23289 -- Added mock as a test dependency.
2014-12-01 16:08:25 -05:00
wrwrwr
e6f19ec322
Fixed #23933 -- Made override_settings(DATABASE_ROUTERS) affect the master router.
2014-12-01 11:30:50 -05:00
wrwrwr
6dbe979b4d
Fixed #23930 -- Added copies of captured_std* managers from CPython's test.support.
...
StringIO import was adapted for compatibility with Python 2.
2014-11-29 11:21:58 -05:00
wrwrwr
056a3c6c37
Fixed #23682 -- Enhanced circular redirects detection in tests.
...
When the test client detects a redirect to a URL seen in the
currently followed chain it will now raise a RedirectCycleError
instead of just returning the first repeated response.
It will also complain when a single chain of redirects is longer
than 20, as this often means a redirect loop with varying URLs,
and even if it's not actually one, such long chains are likely
to be treated as loops by browsers.
Thanks Preston Timmons, Berker Peksag, and Tim Graham for reviews.
2014-11-25 10:12:28 -05:00
wrwrwr
e22c64dfc0
Fixed #23742 -- Added an option to reverse tests order.
...
This is useful for debugging side effects affecting tests that
are usually executed before a given test. Full suite and pair
tests sort cases more or less deterministically, thus some test
cross-dependencies are easier to reveal by reversing the order.
Thanks Preston Timmons for the review.
2014-11-24 19:24:11 -05:00
Aymeric Augustin
6294bd3903
Encapsulated TEMPLATE_DEBUG in Engine.
2014-11-23 11:54:17 +01:00
Aymeric Augustin
37505b6397
Encapsulated TEMPLATE_CONTEXT_PROCESSORS in Engine.
...
Since RequestContext doesn't know its Engine until it's passed to
Template.render() -- and cannot without breaking a widely used public
API -- an elaborate hack is required to apply context processors.
2014-11-23 11:53:18 +01:00
Aymeric Augustin
a2dd08666c
Removed dependency of template loaders on Django settings.
2014-11-23 11:52:14 +01:00
Aymeric Augustin
29a977ab14
Moved template loaders management in Engine.
...
Passed the engine instance to loaders. This is a prerequisite for
looking up configuration on the engine instance instead of global
settings.
This is backwards incompatible for custom template loaders that override
__init__. However the documentation doesn't talk about __init__ and the
way to pass arguments to custom template loaders isn't specified. I'm
considering it a private API.
2014-11-23 11:52:12 +01:00
Aymeric Augustin
572cdb4391
Introduced a template engine class.
...
Moved Django templates loading infrastructure there.
2014-11-23 09:29:53 +01:00
Aymeric Augustin
f88ad710fa
Simplified caching of template context processors.
2014-11-19 21:35:39 +01:00
Aymeric Augustin
a97e72aaab
Simplified caching of templatetags modules.
2014-11-19 21:35:39 +01:00
Aymeric Augustin
e23240474b
Simplified caching of get_default_timezone().
2014-11-19 21:35:39 +01:00
Aymeric Augustin
9eeb788cfb
Refactored getting the list of template loaders.
...
This provides the opportunity to move utility functions specific to the
Django Template Language outside of django.template.loader.
2014-11-16 21:41:44 +01:00
Aymeric Augustin
b503fee7ec
Removed override_template_loaders and override_with_test_loader.
...
They can be replaced with override_settings and that makes the
corresponding tests much more obvious.
2014-11-16 21:40:50 +01:00
Aymeric Augustin
d58597a7b8
Refactored listing template subdirectories in apps.
...
This change has the nice side effect of removing code that ran at import
time and depended on the app registry at module level -- a notorious
cause of AppRegistryNotReady exceptions.
2014-11-16 21:28:43 +01:00
Aymeric Augustin
2577ae6a08
Moved all template loaders under django.template.loaders.
...
Reformatted the code of base.Loader according to modern standards.
Turned the test template loader into a regular locmem.Loader -- but
didn't document it.
Added a normal deprecation path for BaseLoader which is a public API.
Added an accelerated deprecation path for TestTemplateLoader which is
a private API.
2014-11-16 21:28:26 +01:00
Aymeric Augustin
cffa559082
Fixed regression in 4dc4d12e
. Refs #21598 .
...
That commit contained a mistake that resulted in the use_cached_loader
option of override_with_test_loader being ignored. As a consequence some
configurations weren't exercised any more by the test suite.
2014-11-16 21:25:09 +01:00
Aymeric Augustin
b239c3d27e
Fixed negligible formatting error.
2014-11-10 21:41:35 +01:00
Thomas Chaumeny
498ae3a360
Removed legacy code from old transaction system
2014-11-10 18:28:46 +01:00
Davide Ceretti
2d06e3155a
Fixed #23300 -- Made assertTemplateUsed throw an error on responses not fetched using the test client.
...
Thanks zags for the report and bmispelon for the patch.
2014-11-03 14:31:23 -05:00
Thomas Chaumeny
d89f56dc4d
Fixed #21281 -- Made override_settings act at class level when used as a TestCase decorator.
2014-11-03 14:14:39 -05:00
Rigel Di Scala
28634394f5
Fixed #23606 -- Implemented Client and RequestFactory trace() methods.
...
Thanks KevinEtienne for the suggestion.
2014-10-28 10:11:12 -04:00
Claude Paroz
2c9a03d487
Fixed #23707 -- Prevented discovery of duplicated tests
2014-10-23 21:03:57 +02:00
Claude Paroz
f0bb3c98cc
Fixed #21740 -- Allowed test client data to be an empty string
...
This fixes a regression introduced by 2a31d00933
.
Thanks tony-zhu for the report.
2014-10-21 09:16:57 +02:00
Claude Paroz
b8f2c972d0
Removed redundant skip_checks option for call_command
2014-10-20 17:26:00 +02:00
Anubhav Joshi
10b17a22be
Fixed #19508 -- Implemented uri_to_iri as per RFC.
...
Thanks Loic Bistuer for helping in shaping the patch and Claude Paroz
for the review.
2014-10-16 02:31:17 +07:00
Duncan Parkes
88b6cf4ae4
Fixed #23600 -- Made default_storage aware of more settings changes.
...
Added MEDIA_URL, FILE_UPLOAD_PERMISSIONS, and
FILE_UPLOAD_DIRECTORY_PERMISSIONS to the list of settings.
2014-10-08 18:10:47 -04:00
Thomas Chaumeny
311b3ad9db
Fixed #23567 -- Made assertQuerysetEqual check Counter equality when ordered=False
2014-09-29 12:00:14 -04:00
Thomas Chaumeny
b2aad7b836
Replaced set([foo, ...]) by {foo, ...} literals. Refs PR 3282.
...
Thanks Collin Anderson for the review.
2014-09-29 00:01:38 +07:00
Tim Graham
a4f23eba2e
Fixed #23421 -- Corrected TEST SERIALIZE setting.
...
Thanks gkoller for the report.
2014-09-24 14:46:10 -04:00
Tim Graham
52ef6a4726
Fixed #17101 -- Integrated django-secure and added check --deploy option
...
Thanks Carl Meyer for django-secure and for reviewing.
Thanks also to Zach Borboa, Erik Romijn, Collin Anderson, and
Jorge Carleitao for reviews.
2014-09-12 15:05:23 -04:00
Joshua "jag" Ginsberg
eb2af16c59
Fixed #21483 -- Added WSGI environ to kwargs sent to request_started signal.
2014-08-29 10:12:03 -04:00
Thomas Chaumeny
191d953c99
Factorize some code using ContextDecorator.
2014-08-28 11:58:16 -04:00
Claude Paroz
5675eb371f
Allowed skipIf/UnlessDBFeature to accept several feature strings
2014-08-26 20:03:37 +02:00
Claude Paroz
46c7707e50
Replaced HAS_SPATIALREFSYS by a database feature
2014-08-23 15:41:13 +02:00
Unai Zalakain
5f2542f12a
Fixed #10190 -- Made HttpResponse charset customizable.
...
Thanks to Simon Charette, Aymeric Augustin, and Tim Graham
for reviews and contributions.
2014-08-19 17:34:38 -04:00
areski
90faa196f6
Fixed #22873 -- Renamed use_debug_cursor to force_debug_cursor to clarify the behavior.
2014-07-26 10:38:46 -04:00
Claude Paroz
4b4524291a
Converted test management command to argparse
...
Keeping backwards compatibility with test_runner.option_list is
tricky and would imply transforming an optparse.Option to an
argparse.Action. I choose to introduce a backwards incompatible
change because it only affects testing, not runtime behavior.
2014-06-14 13:43:39 +02:00
Xavier Fernandez
50b9313e0a
Fixed #22771 -- Fixed test.Client.logout when using custom auth backend.
2014-06-13 13:03:58 -04:00
Greg Chapple
bf743a4d57
Fixed #16087 -- Added ResolverMatch instance to test client response.
...
Thanks mrmachine for the suggestion.
2014-06-13 08:50:43 -04:00
Tim Graham
4b25ebf112
Fixed flake8 error.
2014-06-09 12:00:12 -04:00
Andrew Godwin
8c12d51ea2
Fixed #22487 : Optional rollback emulation for migrated apps
2014-06-08 19:30:15 -07:00
Aymeric Augustin
cfcca7ccce
Fixed #3711 , #6734 , #12581 -- Bounded connection.queries.
...
Prevented unlimited memory consumption when running background tasks
with DEBUG=True.
Thanks Rob, Alex, Baptiste, and others.
2014-06-07 14:37:43 +02:00
Greg Chapple
72f055e535
Fixed #20550 -- Added keepdb argument to destroy_test_db
2014-06-05 23:17:27 +01:00
Greg Chapple
b7aa7c4ab4
Fixed #20550 -- Added ability to preserve test db between runs
2014-05-28 16:22:46 +01:00
Preston Timmons
be88b062af
Fixed #21357 -- Fixed test client session initialization.
...
The test client will now create a session when it is first accessed
if no session already exists.
2014-05-22 20:29:48 -04:00
Unai Zalakain
4dc4d12e27
Fixed #21598 -- cleaned up template loader overrides in tests
...
- Template loader overriding is managed with contexts.
- The test loader is a class (function based loaders entered deprecation timeline
in 1.4).
- Template loader overrider that overrides with test loader added.
2014-05-22 18:35:16 -04:00
Loic Bistuer
942556df2f
Fixed #22572 -- override_settings(ROOT_URLCONF) didn't clear urlresolvers._urlconfs.
...
Thanks Anubhav Joshi and Tim Graham for the reviews.
2014-05-05 19:29:27 +07:00
Tim Graham
aabceadd7d
Revert "Fixed #15179 -- middlewares not applied for test client login()"
...
This reverts commit 4fdd51b732
.
See the ticket for concerns with this implementation; it will be revisited.
2014-04-28 18:41:36 -04:00
Alex Gaynor
2bcb8bfc8d
Fix many many typos in comments throughout the codebase
2014-04-26 10:18:45 -07:00
amatellanes
8394e570ba
Fixed #22465 -- New assertion assertJSONNotEqual
2014-04-18 15:11:08 +07:00
Jacob R. Rothenbuhler
17c1884456
Fixed #22369 -- Added count parameter to assertTemplateUsed
2014-04-14 15:55:10 -04:00
Claude Paroz
3e3a7372f5
Fixed #22102 -- Made SimpleTestCase tests run before unittest.TestCase ones
...
Thanks aptiko for the reporti and Tim Graham for the review.
2014-04-12 11:42:06 +02:00
Aymeric Augustin
2791fbf59d
Used more specific test assertions.
2014-04-09 22:20:22 +02:00
Anubhav Joshi
cd914e31c9
Fixed #21977 -- Deprecated SimpleTestCase.urls
2014-04-06 17:33:43 -04:00
Tim Graham
029d77eaaa
Fixed typo in docstring.
2014-03-31 07:01:13 -04:00
Aymeric Augustin
232181d1c5
Advanced deprecation warnings for 1.8.
2014-03-22 21:12:58 +01:00
Aymeric Augustin
0f9560855e
Removed legacy transaction management per the deprecation timeline.
2014-03-21 21:06:50 +01:00
Tim Graham
bf5430a20b
Removed django.test.simple and django.test._doctest per deprecation timeline.
...
refs #17365 , #17366 , #18727 .
2014-03-21 13:36:46 -04:00
Shai Berger
41afae4ce9
Reorganized the database test settings
...
Change database test settings from "TEST_"-prefixed entries in the
database settings dictionary to setting in a dictionary that is itself
an entry "TEST" in the database settings.
Refs #21775
Thanks Josh Smeaton for review.
2014-03-09 03:57:18 +02:00
Claude Paroz
210d0489c5
Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warnings
...
Thanks Anssi Kääriäinen for the idea and Simon Charette for the
review.
2014-03-08 09:57:40 +01:00
Rodolfo Carvalho
0d91225892
Fixed many typos in comments and docstrings.
...
Thanks Piotr Kasprzyk for help with the patch.
2014-03-03 07:38:09 -05:00
Florian Apolloner
474eeccb52
Fixed a typo (I guess).
2014-02-13 17:36:53 +01:00
Chris Bailey
c5395eef76
Allowed a message to be passed to assertQuerysetEqual to make it consistent with other assert methods.
2014-02-10 05:21:23 -05:00
Chris Wilson
65131911db
Fixed #21518 -- Made override_settings(ROOT_URLCONF) clear the resolver cache.
...
Thanks Aymeric Augustin and Simon Charette for reviews.
2014-02-07 15:29:25 -05:00
Aymeric Augustin
b87bc461c8
Removed TransRealMixin.
...
Fixed #21688 . Refs https://github.com/django/django/pull/1147 .
2014-01-27 22:02:07 +01:00
Aymeric Augustin
3145ae06be
Minor cleanup.
2014-01-27 22:01:22 +01:00