2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-05-02 13:28:49 +00:00
InvenTree/InvenTree/order/test_views.py
Oliver 4785f465e8
Cleanup / consolidate unit testing code (#4831)
- Move testing code out of helpers.py
- Create new file unit_test.py
2023-05-17 07:35:26 +10:00

89 lines
2.6 KiB
Python

"""Unit tests for Order views (see views.py)"""
from django.urls import reverse
from InvenTree.unit_test import InvenTreeTestCase
class OrderViewTestCase(InvenTreeTestCase):
"""Base unit test class for order views"""
fixtures = [
'category',
'part',
'bom',
'location',
'company',
'supplier_part',
'stock',
'order',
'sales_order',
'return_order',
]
roles = [
'purchase_order.change',
'purchase_order.add',
'purchase_order.delete',
'sales_order.change',
'sales_order.add',
'sales_order.delete',
'return_order.change',
'return_order.add',
'return_order.delete',
]
class PurchaseOrderListTest(OrderViewTestCase):
"""Unit tests for the PurchaseOrder index page"""
def test_order_list(self):
"""Tests for the PurchaseOrder index page"""
response = self.client.get(reverse('purchase-order-index'))
self.assertEqual(response.status_code, 200)
class PurchaseOrderTests(OrderViewTestCase):
"""Tests for PurchaseOrder views."""
def test_detail_view(self):
"""Retrieve PO detail view."""
response = self.client.get(reverse('po-detail', args=(1,)))
self.assertEqual(response.status_code, 200)
keys = response.context.keys()
self.assertIn('PurchaseOrderStatus', keys)
def test_po_export(self):
"""Export PurchaseOrder."""
response = self.client.get(reverse('po-export', args=(1,)), HTTP_X_REQUESTED_WITH='XMLHttpRequest')
# Response should be streaming-content (file download)
self.assertIn('streaming_content', dir(response))
class SalesOrderViews(OrderViewTestCase):
"""Unit tests for the SalesOrder pages"""
def test_index(self):
"""Test the SalesOrder index page"""
response = self.client.get(reverse('sales-order-index'))
self.assertEqual(response.status_code, 200)
def test_detail(self):
"""Test SalesOrder detail view"""
response = self.client.get(reverse('so-detail', args=(1,)))
self.assertEqual(response.status_code, 200)
class ReturnOrderVIews(OrderViewTestCase):
"""Unit tests for the ReturnOrder pages"""
def test_index(self):
"""Test the ReturnOrder index page"""
response = self.client.get(reverse('return-order-index'))
self.assertEqual(response.status_code, 200)
def test_detail(self):
"""Test ReturnOrder detail view"""
response = self.client.get(reverse('return-order-detail', args=(1,)))
self.assertEqual(response.status_code, 200)