2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-07-13 08:21:26 +00:00

Add "default" from serializer field (if present)

- Overrides model default
- Set choices for currency serializer field
- Adds some unit testing
This commit is contained in:
Oliver
2021-06-29 23:14:39 +10:00
parent 8b3a497554
commit 33ec91acc7
5 changed files with 85 additions and 3 deletions

View File

@ -62,12 +62,79 @@ class CompanyTest(InvenTreeAPITestCase):
self.assertEqual(response.data['name'], 'ACMOO')
def test_company_search(self):
# Test search functionality in company list
"""
Test search functionality in company list
"""
url = reverse('api-company-list')
data = {'search': 'cup'}
response = self.get(url, data)
self.assertEqual(len(response.data), 2)
def test_company_create(self):
"""
Test that we can create a company via the API!
"""
url = reverse('api-company-list')
# Name is required
response = self.post(
url,
{
'description': 'A description!',
},
expected_code=400
)
# Minimal example, checking default values
response = self.post(
url,
{
'name': 'My API Company',
'description': 'A company created via the API',
},
expected_code=201
)
self.assertTrue(response.data['is_supplier'])
self.assertFalse(response.data['is_customer'])
self.assertFalse(response.data['is_manufacturer'])
self.assertEqual(response.data['currency'], 'USD')
# Maximal example, specify values
response = self.post(
url,
{
'name': "Another Company",
'description': "Also created via the API!",
'currency': 'AUD',
'is_supplier': False,
'is_manufacturer': True,
'is_customer': True,
},
expected_code=201
)
self.assertEqual(response.data['currency'], 'AUD')
self.assertFalse(response.data['is_supplier'])
self.assertTrue(response.data['is_customer'])
self.assertTrue(response.data['is_manufacturer'])
# Attempt to create with invalid currency
response = self.post(
url,
{
'name': "A name",
'description': 'A description',
'currency': 'POQD',
},
expected_code=400
)
self.assertTrue('currency' in response.data)
class ManufacturerTest(InvenTreeAPITestCase):
"""