|
1 | 1 | import operator
|
2 | 2 | from datetime import timedelta
|
3 | 3 |
|
4 |
| -from django.core.exceptions import FieldDoesNotExist, FieldError, ValidationError |
| 4 | +from django.core.exceptions import FieldDoesNotExist, ValidationError |
5 | 5 | from django.db import models
|
6 | 6 | from django.db.models import (
|
7 | 7 | Exists,
|
|
24 | 24 | Data,
|
25 | 25 | Holder,
|
26 | 26 | Library,
|
27 |
| - Movie, |
28 | 27 | NestedData,
|
29 |
| - Review, |
30 | 28 | )
|
31 | 29 | from .utils import truncate_ms
|
32 | 30 |
|
@@ -98,60 +96,6 @@ def test_pre_save(self):
|
98 | 96 | self.assertGreater(obj.data.auto_now, auto_now_two)
|
99 | 97 |
|
100 | 98 |
|
101 |
| -class EmbeddedArrayTests(TestCase): |
102 |
| - def test_save_load(self): |
103 |
| - reviews = [ |
104 |
| - Review(title="The best", rating=10), |
105 |
| - Review(title="Mediocre", rating=5), |
106 |
| - Review(title="Horrible", rating=1), |
107 |
| - ] |
108 |
| - Movie.objects.create(title="Lion King", reviews=reviews) |
109 |
| - movie = Movie.objects.get(title="Lion King") |
110 |
| - self.assertEqual(movie.reviews[0].title, "The best") |
111 |
| - self.assertEqual(movie.reviews[0].rating, 10) |
112 |
| - self.assertEqual(movie.reviews[1].title, "Mediocre") |
113 |
| - self.assertEqual(movie.reviews[1].rating, 5) |
114 |
| - self.assertEqual(movie.reviews[2].title, "Horrible") |
115 |
| - self.assertEqual(movie.reviews[2].rating, 1) |
116 |
| - self.assertEqual(len(movie.reviews), 3) |
117 |
| - |
118 |
| - def test_save_load_null(self): |
119 |
| - movie = Movie.objects.create(title="Lion King") |
120 |
| - movie = Movie.objects.get(title="Lion King") |
121 |
| - self.assertIsNone(movie.reviews) |
122 |
| - |
123 |
| - |
124 |
| -class EmbeddedArrayQueryingTests(TestCase): |
125 |
| - @classmethod |
126 |
| - def setUpTestData(cls): |
127 |
| - reviews = [ |
128 |
| - Review(title="The best", rating=10), |
129 |
| - Review(title="Mediocre", rating=5), |
130 |
| - Review(title="Horrible", rating=1), |
131 |
| - ] |
132 |
| - cls.clouds = Movie.objects.create(title="Clouds", reviews=reviews) |
133 |
| - reviews = [ |
134 |
| - Review(title="Super", rating=9), |
135 |
| - Review(title="Meh", rating=5), |
136 |
| - Review(title="Horrible", rating=2), |
137 |
| - ] |
138 |
| - cls.frozen = Movie.objects.create(title="Frozen", reviews=reviews) |
139 |
| - reviews = [ |
140 |
| - Review(title="Excellent", rating=9), |
141 |
| - Review(title="Wow", rating=8), |
142 |
| - Review(title="Classic", rating=7), |
143 |
| - ] |
144 |
| - cls.bears = Movie.objects.create(title="Bears", reviews=reviews) |
145 |
| - |
146 |
| - def test_filter_with_field(self): |
147 |
| - msg = ( |
148 |
| - "Unsupported lookup 'title' for EmbeddedModelArrayField or join " |
149 |
| - "on the field not permitted." |
150 |
| - ) |
151 |
| - with self.assertRaisesMessage(FieldError, msg): |
152 |
| - Movie.objects.filter(reviews__title="Horrible") |
153 |
| - |
154 |
| - |
155 | 99 | class QueryingTests(TestCase):
|
156 | 100 | @classmethod
|
157 | 101 | def setUpTestData(cls):
|
|
0 commit comments