update
This commit is contained in:
44
inventory/tests_template_fields.py
Normal file
44
inventory/tests_template_fields.py
Normal file
@@ -0,0 +1,44 @@
|
||||
from decimal import Decimal
|
||||
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.test import TestCase
|
||||
from django.urls import reverse
|
||||
|
||||
from inventory.models import Item, ItemTemplate
|
||||
|
||||
|
||||
User = get_user_model()
|
||||
|
||||
|
||||
class TemplateFieldsIntegrationTests(TestCase):
|
||||
def setUp(self):
|
||||
self.user = User.objects.create_user(username="alice", password="password123")
|
||||
|
||||
def test_create_item_with_template_fields(self):
|
||||
tmpl = ItemTemplate.objects.create(
|
||||
name="VHS Player",
|
||||
category="Electronics",
|
||||
field_definitions=[
|
||||
{"name": "rewind", "label": "Has Rewind", "type": "boolean"},
|
||||
{"name": "outputs", "label": "Output Count", "type": "number"},
|
||||
],
|
||||
)
|
||||
|
||||
self.client.login(username="alice", password="password123")
|
||||
response = self.client.post(
|
||||
reverse("item-create"),
|
||||
{
|
||||
"template": tmpl.id,
|
||||
"title": "Panasonic VHS",
|
||||
"brand": "Panasonic",
|
||||
"category": "",
|
||||
"purchase_price": "5.00",
|
||||
"prop_rewind": "on",
|
||||
"prop_outputs": "2",
|
||||
},
|
||||
)
|
||||
|
||||
self.assertEqual(response.status_code, 302)
|
||||
item = Item.objects.get(title="Panasonic VHS")
|
||||
self.assertTrue(item.properties.get("rewind"))
|
||||
self.assertEqual(item.properties.get("outputs"), "2")
|
||||
Reference in New Issue
Block a user