Merge pull request 'make customer name required field #17' (#19) from make_customer_name_required_#17 into main
Reviewed-on: #19
This commit is contained in:
		| @@ -0,0 +1,18 @@ | |||||||
|  | # Generated by Django 5.0.6 on 2024-08-17 14:22 | ||||||
|  |  | ||||||
|  | from django.db import migrations, models | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class Migration(migrations.Migration): | ||||||
|  |  | ||||||
|  |     dependencies = [ | ||||||
|  |         ('don_confiao', '0027_alter_product_name'), | ||||||
|  |     ] | ||||||
|  |  | ||||||
|  |     operations = [ | ||||||
|  |         migrations.AlterField( | ||||||
|  |             model_name='customer', | ||||||
|  |             name='address', | ||||||
|  |             field=models.CharField(blank=True, max_length=100, null=True), | ||||||
|  |         ), | ||||||
|  |     ] | ||||||
| @@ -6,8 +6,11 @@ from decimal import Decimal | |||||||
|  |  | ||||||
|  |  | ||||||
| class Customer(models.Model): | class Customer(models.Model): | ||||||
|     name = models.CharField(max_length=100) |     name = models.CharField(max_length=100, default=None, null=False, blank=False) | ||||||
|     address = models.CharField(max_length=100) |     address = models.CharField(max_length=100, null=True, blank=True) | ||||||
|  |  | ||||||
|  |     def __str__(self): | ||||||
|  |         return self.name | ||||||
|  |  | ||||||
|  |  | ||||||
| class MeasuringUnits(models.TextChoices): | class MeasuringUnits(models.TextChoices): | ||||||
| @@ -53,7 +56,7 @@ class Sale(models.Model): | |||||||
| class SaleLine(models.Model): | class SaleLine(models.Model): | ||||||
|  |  | ||||||
|     sale = models.ForeignKey(Sale, on_delete=models.CASCADE) |     sale = models.ForeignKey(Sale, on_delete=models.CASCADE) | ||||||
|     product = models.ForeignKey(Product, on_delete=models.CASCADE) |     product = models.ForeignKey(Product, null=False, blank=False, on_delete=models.CASCADE) | ||||||
|     quantity = models.IntegerField(null=True) |     quantity = models.IntegerField(null=True) | ||||||
|     unit_price = models.DecimalField(max_digits=9, decimal_places=2) |     unit_price = models.DecimalField(max_digits=9, decimal_places=2) | ||||||
|     description = models.CharField(max_length=255, null=True, blank=True) |     description = models.CharField(max_length=255, null=True, blank=True) | ||||||
|   | |||||||
| @@ -1,5 +1,7 @@ | |||||||
| #!/usr/bin/env python3 | #!/usr/bin/env python3 | ||||||
| from django.test import TestCase | from django.test import TestCase | ||||||
|  | from django.db.utils import IntegrityError | ||||||
|  |  | ||||||
| from ..models import Customer | from ..models import Customer | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -12,3 +14,8 @@ class TestCustomer(TestCase): | |||||||
|         customer.save() |         customer.save() | ||||||
|  |  | ||||||
|         self.assertIsInstance(customer, Customer) |         self.assertIsInstance(customer, Customer) | ||||||
|  |  | ||||||
|  |     def test_don_create_customer_without_name(self): | ||||||
|  |         customer = Customer() | ||||||
|  |         with self.assertRaises(IntegrityError): | ||||||
|  |             customer.save() | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user