diff options
| author | Simon Charette <charette.s@gmail.com> | 2019-01-15 21:39:05 -0600 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2019-02-09 08:47:40 -0500 |
| commit | ebd2fe186186800af343f0041a0904381b4dfc44 (patch) | |
| tree | a44d72b318797fda2f6c00695c2e7297aa244dae | |
| parent | eefc9550fd3b8011cc12069eb700df09f25cc4d9 (diff) | |
Refs #30027 -- Enabled window function tests on SQLite 3.25+.
| -rw-r--r-- | django/db/backends/sqlite3/features.py | 1 | ||||
| -rw-r--r-- | tests/expressions_window/tests.py | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/django/db/backends/sqlite3/features.py b/django/db/backends/sqlite3/features.py index 363329edfd..3d52a8036f 100644 --- a/django/db/backends/sqlite3/features.py +++ b/django/db/backends/sqlite3/features.py @@ -40,3 +40,4 @@ class DatabaseFeatures(BaseDatabaseFeatures): supports_pragma_foreign_key_check = Database.sqlite_version_info >= (3, 20, 0) can_defer_constraint_checks = supports_pragma_foreign_key_check supports_functions_in_partial_indexes = Database.sqlite_version_info >= (3, 15, 0) + supports_over_clause = Database.sqlite_version_info >= (3, 25, 0) diff --git a/tests/expressions_window/tests.py b/tests/expressions_window/tests.py index 21aa2ecbf9..fa9bb2916b 100644 --- a/tests/expressions_window/tests.py +++ b/tests/expressions_window/tests.py @@ -537,6 +537,7 @@ class WindowFunctionTests(TestCase): ], transform=lambda row: (row.name, row.salary, row.department, row.hire_date, row.sum)) @skipIf(connection.vendor == 'postgresql', 'n following/preceding not supported by PostgreSQL') + @skipIf(connection.vendor == 'sqlite', 'n following/preceding not supported by SQLite') def test_range_n_preceding_and_following(self): qs = Employee.objects.annotate(sum=Window( expression=Sum('salary'), @@ -584,6 +585,10 @@ class WindowFunctionTests(TestCase): ('Brown', 'Sales', 53000, datetime.date(2009, 9, 1), 148000) ], transform=lambda row: (row.name, row.department, row.salary, row.hire_date, row.sum)) + @skipIf( + connection.vendor == 'sqlite' and connection.Database.sqlite_version_info < (3, 27), + 'Nondeterministic failure on SQLite < 3.27.' + ) def test_subquery_row_range_rank(self): qs = Employee.objects.annotate( highest_avg_salary_date=Subquery( |
