From bf8a22a4fded243ac836e3754d98b88eda113427 Mon Sep 17 00:00:00 2001 From: Endrawan Andika Wicaksana <endrawan.andika@ui.ac.id> Date: Fri, 6 Dec 2019 16:32:08 +0700 Subject: [PATCH 1/2] Create test for incorrect company size --- core/tests/test_accounts.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/core/tests/test_accounts.py b/core/tests/test_accounts.py index 8debc4c7..5c4a6626 100755 --- a/core/tests/test_accounts.py +++ b/core/tests/test_accounts.py @@ -493,6 +493,12 @@ class ProfileUpdateTests(APITestCase): response = self.client.patch(url, {'size': '1000'}, format='multipart') self.assertEqual(response.status_code, status.HTTP_202_ACCEPTED) + response = self.client.patch(url, {'size': '-1'}, format='multipart') + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + + response = self.client.patch(url, {'size': 'tulisan'}, format='multipart') + self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) + response = self.client.patch(url, {'website': 'www.huehue.com'}, format='multipart') self.assertEqual(response.status_code, status.HTTP_202_ACCEPTED) -- GitLab From e16a7eecf6169eb74ae560cd7cfd253af486a533 Mon Sep 17 00:00:00 2001 From: Endrawan Andika Wicaksana <endrawan.andika@ui.ac.id> Date: Fri, 6 Dec 2019 16:40:04 +0700 Subject: [PATCH 2/2] Implement validator for company size --- core/migrations/0005_auto_20191206_1634.py | 19 +++++++++++++++++++ core/models/accounts.py | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 core/migrations/0005_auto_20191206_1634.py diff --git a/core/migrations/0005_auto_20191206_1634.py b/core/migrations/0005_auto_20191206_1634.py new file mode 100644 index 00000000..91b48eae --- /dev/null +++ b/core/migrations/0005_auto_20191206_1634.py @@ -0,0 +1,19 @@ +# Generated by Django 2.2.8 on 2019-12-06 09:34 + +import django.core.validators +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('core', '0004_auto_20191206_1510'), + ] + + operations = [ + migrations.AlterField( + model_name='company', + name='size', + field=models.IntegerField(default=1, validators=[django.core.validators.MinValueValidator(1)]), + ), + ] diff --git a/core/models/accounts.py b/core/models/accounts.py index 6077d210..2a8b1341 100755 --- a/core/models/accounts.py +++ b/core/models/accounts.py @@ -167,7 +167,7 @@ class Company(models.Model): validators=[validate_image_file_extension]) address = models.CharField(max_length=1000, blank=True, null=True) category = models.CharField(max_length=140, default="Belum ada kategori perusahaan") - size = models.CharField(max_length=10, default=0, null=True, blank=True) + size = models.IntegerField(default=1, validators=[MinValueValidator(1)]) website = models.CharField(max_length=100, default="Belum ada link website") linkedin_url = models.URLField(max_length=200, blank=True, null=True) -- GitLab