|
| 1 | +import django |
1 | 2 | from django.core.files import File
|
2 | 3 | from selenium.webdriver.common.by import By
|
3 | 4 | from selenium.webdriver.support.wait import WebDriverWait
|
@@ -181,3 +182,67 @@ def test_hover_add_button(self):
|
181 | 182 | self.hover_and_wait(add_button, 0.4)
|
182 | 183 |
|
183 | 184 | self.assertMatchSnapshot(root, 'in_test_hover_add_button')
|
| 185 | + |
| 186 | + def test_ui_initialized_toggle_dark_theme(self): |
| 187 | + major, minor, _, _, _ = django.VERSION |
| 188 | + if major < 4 or minor < 2: |
| 189 | + # Theme toggle is added in django 4.2 |
| 190 | + # https://docs.djangoproject.com/en/4.2/releases/4.2/#django-contrib-admin |
| 191 | + return |
| 192 | + |
| 193 | + inline = models.Inline.objects.create() |
| 194 | + |
| 195 | + item1 = models.InlineItem() |
| 196 | + item1.parent = inline |
| 197 | + with open(self.image1, 'rb') as f: |
| 198 | + item1.image.save("image.png", File(f)) |
| 199 | + item1.save() |
| 200 | + |
| 201 | + item2 = models.InlineItem() |
| 202 | + item2.parent = inline |
| 203 | + with open(self.image2, 'rb') as f: |
| 204 | + item2.image.save("image2.png", File(f)) |
| 205 | + item2.save() |
| 206 | + |
| 207 | + self.selenium.get(self.get_edit_url(inline.id)) |
| 208 | + |
| 209 | + root = self.selenium.find_element(By.CSS_SELECTOR, '.iuw-inline-root') |
| 210 | + self.assertMatchSnapshot(root, 'in_test_ui_initialized_toggle_dark_theme') |
| 211 | + |
| 212 | + toggle = self.selenium.find_element(By.CSS_SELECTOR, '#header button.theme-toggle') |
| 213 | + self.click_and_wait(toggle, 0.3) |
| 214 | + |
| 215 | + self.assertMatchSnapshot(root, 'in_test_ui_initialized_toggle_dark_theme2') |
| 216 | + |
| 217 | + def test_ui_initialized_toggle_dark_theme_inverted(self): |
| 218 | + self.dark_mode() |
| 219 | + |
| 220 | + major, minor, _, _, _ = django.VERSION |
| 221 | + if major < 4 or minor < 2: |
| 222 | + # Theme toggle is added in django 4.2 |
| 223 | + # https://docs.djangoproject.com/en/4.2/releases/4.2/#django-contrib-admin |
| 224 | + return |
| 225 | + |
| 226 | + inline = models.Inline.objects.create() |
| 227 | + |
| 228 | + item1 = models.InlineItem() |
| 229 | + item1.parent = inline |
| 230 | + with open(self.image1, 'rb') as f: |
| 231 | + item1.image.save("image.png", File(f)) |
| 232 | + item1.save() |
| 233 | + |
| 234 | + item2 = models.InlineItem() |
| 235 | + item2.parent = inline |
| 236 | + with open(self.image2, 'rb') as f: |
| 237 | + item2.image.save("image2.png", File(f)) |
| 238 | + item2.save() |
| 239 | + |
| 240 | + self.selenium.get(self.get_edit_url(inline.id)) |
| 241 | + |
| 242 | + root = self.selenium.find_element(By.CSS_SELECTOR, '.iuw-inline-root') |
| 243 | + self.assertMatchSnapshot(root, 'in_test_ui_initialized_toggle_dark_theme_inverted') |
| 244 | + |
| 245 | + toggle = self.selenium.find_element(By.CSS_SELECTOR, '#header button.theme-toggle') |
| 246 | + self.click_and_wait(toggle, 0.3) |
| 247 | + |
| 248 | + self.assertMatchSnapshot(root, 'in_test_ui_initialized_toggle_dark_theme_inverted2') |
0 commit comments