mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Add unit testing for view
This commit is contained in:
parent
7d7d5d24cc
commit
da02ab3eac
@ -74,6 +74,7 @@
|
|||||||
level: 0
|
level: 0
|
||||||
lft: 0
|
lft: 0
|
||||||
rght: 0
|
rght: 0
|
||||||
|
default_expiry: 10
|
||||||
|
|
||||||
- model: part.part
|
- model: part.part
|
||||||
pk: 50
|
pk: 50
|
||||||
|
@ -6,6 +6,7 @@ from django.contrib.auth import get_user_model
|
|||||||
from django.contrib.auth.models import Group
|
from django.contrib.auth.models import Group
|
||||||
|
|
||||||
import json
|
import json
|
||||||
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
|
|
||||||
class StockViewTestCase(TestCase):
|
class StockViewTestCase(TestCase):
|
||||||
@ -135,21 +136,53 @@ class StockItemTest(StockViewTestCase):
|
|||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
def test_create_item(self):
|
def test_create_item(self):
|
||||||
# Test creation of StockItem
|
"""
|
||||||
response = self.client.get(reverse('stock-item-create'), {'part': 1}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
Test creation of StockItem
|
||||||
|
"""
|
||||||
|
|
||||||
|
url = reverse('stock-item-create')
|
||||||
|
|
||||||
|
response = self.client.get(url, {'part': 1}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
response = self.client.get(reverse('stock-item-create'), {'part': 999}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
response = self.client.get(url, {'part': 999}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
# Copy from a valid item, valid location
|
# Copy from a valid item, valid location
|
||||||
response = self.client.get(reverse('stock-item-create'), {'location': 1, 'copy': 1}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
response = self.client.get(url, {'location': 1, 'copy': 1}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
# Copy from an invalid item, invalid location
|
# Copy from an invalid item, invalid location
|
||||||
response = self.client.get(reverse('stock-item-create'), {'location': 999, 'copy': 9999}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
response = self.client.get(url, {'location': 999, 'copy': 9999}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
def test_create_stock_with_expiry(self):
|
||||||
|
"""
|
||||||
|
Test creation of stock item of a part with an expiry date.
|
||||||
|
The initial value for the "expiry_date" field should be pre-filled,
|
||||||
|
and should be in the future!
|
||||||
|
"""
|
||||||
|
|
||||||
|
url = reverse('stock-item-create')
|
||||||
|
|
||||||
|
response = self.client.get(url, {'part': 25}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
|
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
# We are expecting 10 days in the future
|
||||||
|
expiry = datetime.now().date() + timedelta(10)
|
||||||
|
|
||||||
|
expected = f'name=\\\\"expiry_date\\\\" value=\\\\"{expiry.isoformat()}\\\\"'
|
||||||
|
|
||||||
|
self.assertIn(expected, str(response.content))
|
||||||
|
|
||||||
|
# Now check with a part which does *not* have a default expiry period
|
||||||
|
response = self.client.get(url, {'part': 1}, HTTP_X_REQUESTED_WITH='XMLHttpRequest')
|
||||||
|
|
||||||
|
expected = 'name=\\\\"expiry_date\\\\" placeholder=\\\\"\\\\"'
|
||||||
|
|
||||||
|
self.assertIn(expected, str(response.content))
|
||||||
|
|
||||||
def test_serialize_item(self):
|
def test_serialize_item(self):
|
||||||
# Test the serialization view
|
# Test the serialization view
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user