changed #id-list-table everywhere to #id_list_table; duplicate item validation in apps.dashboard.tests.test_models, where ListAndItemModelsTest has been broken out into two different test models

This commit is contained in:
Disco DeDisco
2026-01-23 21:50:49 -05:00
parent fa5700d9e8
commit 8a9f7c8af8
2 changed files with 33 additions and 31 deletions

View File

@@ -0,0 +1,17 @@
# Generated by Django 6.0 on 2026-01-24 02:45
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('dashboard', '0003_list_item_list'),
]
operations = [
migrations.AlterUniqueTogether(
name='item',
unique_together={('list', 'text')},
),
]

View File

@@ -3,33 +3,17 @@ from django.db.utils import IntegrityError
from django.test import TestCase
from ..models import Item, List
class ListAndItemModelsTest(TestCase):
def test_saving_and_retrieving_items(self):
mylist = List()
mylist.save()
first_item = Item()
first_item.text = "The first (ever) list item"
first_item.list = mylist
first_item.save()
second_item = Item()
second_item.text = "A sequel somehow better than the first"
second_item.list = mylist
second_item.save()
saved_list = List.objects.get()
self.assertEqual(saved_list, mylist)
saved_items = Item.objects.all()
self.assertEqual(saved_items.count(), 2)
first_saved_item = saved_items[0]
second_saved_item = saved_items[1]
self.assertEqual(first_saved_item.text, "The first (ever) list item")
self.assertEqual(first_saved_item.list, mylist)
self.assertEqual(second_saved_item.text, "A sequel somehow better than the first")
self.assertEqual(second_saved_item.list, mylist)
class ItemModelsTest(TestCase):
def test_default_text(self):
item = Item()
self.assertEqual(item.text, "")
def test_item_is_related_to_list(self):
mylist = List.objects.create()
item = Item()
item.list = mylist
item.save()
self.assertIn(item, mylist.item_set.all())
def test_cannot_save_null_list_items(self):
mylist = List.objects.create()
@@ -43,10 +27,6 @@ class ListAndItemModelsTest(TestCase):
with self.assertRaises(ValidationError):
item.full_clean()
def test_get_absolute_url(self):
mylist = List.objects.create()
self.assertEqual(mylist.get_absolute_url(), f"/apps/dashboard/{mylist.id}/")
def test_duplicate_items_are_invalid(self):
mylist = List.objects.create()
Item.objects.create(list=mylist, text="jklol")
@@ -60,3 +40,8 @@ class ListAndItemModelsTest(TestCase):
Item.objects.create(list=list1, text="nojk")
item = Item(list=list2, text="nojk")
item.full_clean() # should not raise
class ListModelTest(TestCase):
def test_get_absolute_url(self):
mylist = List.objects.create()
self.assertEqual(mylist.get_absolute_url(), f"/apps/dashboard/{mylist.id}/")