diff options
| author | Tony Zhu <tony.zhu.249@gmail.com> | 2014-10-24 15:29:59 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2014-10-27 06:56:44 -0400 |
| commit | dd1ea70779adff294140eddb0229c382e12f32f3 (patch) | |
| tree | a23ffd770a1a9fada69219701d556fc656473d7c /tests | |
| parent | ed7c4df1ee40b9a0793cd294614673fc312bbc33 (diff) | |
Fixed #23699 -- Prevented flush from loading initial data for apps with migrations.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/fixtures_migration/__init__.py | 0 | ||||
| -rw-r--r-- | tests/fixtures_migration/fixtures/initial_data.json | 9 | ||||
| -rw-r--r-- | tests/fixtures_migration/migrations/0001_initial.py | 16 | ||||
| -rw-r--r-- | tests/fixtures_migration/migrations/__init__.py | 0 | ||||
| -rw-r--r-- | tests/fixtures_migration/models.py | 5 | ||||
| -rw-r--r-- | tests/fixtures_migration/tests.py | 31 |
6 files changed, 61 insertions, 0 deletions
diff --git a/tests/fixtures_migration/__init__.py b/tests/fixtures_migration/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/tests/fixtures_migration/__init__.py diff --git a/tests/fixtures_migration/fixtures/initial_data.json b/tests/fixtures_migration/fixtures/initial_data.json new file mode 100644 index 0000000000..2e979fc842 --- /dev/null +++ b/tests/fixtures_migration/fixtures/initial_data.json @@ -0,0 +1,9 @@ +[ + { + "pk": "10", + "model": "fixtures_migration.book", + "fields": { + "name": "Achieving self-awareness of Python programs" + } + } +] diff --git a/tests/fixtures_migration/migrations/0001_initial.py b/tests/fixtures_migration/migrations/0001_initial.py new file mode 100644 index 0000000000..f1db74a874 --- /dev/null +++ b/tests/fixtures_migration/migrations/0001_initial.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + operations = [ + migrations.CreateModel( + "Book", + [ + ("name", models.CharField(max_length=100)), + ], + ), + ] diff --git a/tests/fixtures_migration/migrations/__init__.py b/tests/fixtures_migration/migrations/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/tests/fixtures_migration/migrations/__init__.py diff --git a/tests/fixtures_migration/models.py b/tests/fixtures_migration/models.py new file mode 100644 index 0000000000..3c1d9b63fd --- /dev/null +++ b/tests/fixtures_migration/models.py @@ -0,0 +1,5 @@ +from django.db import models + + +class Book(models.Model): + name = models.CharField(max_length=100) diff --git a/tests/fixtures_migration/tests.py b/tests/fixtures_migration/tests.py new file mode 100644 index 0000000000..9a363385e6 --- /dev/null +++ b/tests/fixtures_migration/tests.py @@ -0,0 +1,31 @@ +from django.test import TestCase +from django.core import management + +from .models import Book + + +class TestNoInitialDataLoading(TestCase): + """ + Apps with migrations should ignore initial data. This test can be removed + in Django 1.9 when migrations become required and initial data is no longer + supported. + """ + available_apps = ['fixtures_migration'] + + def test_migrate(self): + self.assertQuerysetEqual(Book.objects.all(), []) + management.call_command( + 'migrate', + verbosity=0, + ) + self.assertQuerysetEqual(Book.objects.all(), []) + + def test_flush(self): + self.assertQuerysetEqual(Book.objects.all(), []) + management.call_command( + 'flush', + verbosity=0, + interactive=False, + load_initial_data=False + ) + self.assertQuerysetEqual(Book.objects.all(), []) |
