Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion backend/orders/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class Order(models.Model):
customerId = models.IntegerField(null=False, blank=False)
name = models.CharField(max_length=100, null=False, blank=False)
description = models.CharField(max_length=1000, null=True, blank=True, default='')
expectedDeliveryTime = models.TimeField(null=False, blank=False)
expectedDeliveryTime = models.CharField(max_length=50, null=False, blank=False)
status = models.CharField(max_length=1, choices=STATUS, null=False, blank=False)
weight = models.DecimalField(decimal_places=2, max_digits=1000, null=False, blank=False)
cost = models.IntegerField(null=False, blank=False)
Expand Down
2 changes: 1 addition & 1 deletion backend/orders/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class OrderSerializer(serializers.Serializer):
customerId = serializers.IntegerField()
name = serializers.CharField(max_length=100)
description = serializers.CharField(max_length=1000)
expectedDeliveryTime = serializers.TimeField()
expectedDeliveryTime = serializers.CharField(max_length=50)
status = serializers.CharField(max_length=1)
weight = serializers.DecimalField(decimal_places=2, max_digits=1000)
cost = serializers.IntegerField()
Expand Down
14 changes: 7 additions & 7 deletions backend/tests/test_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
class DeliveryModelTest(TestCase):
@classmethod
def setUpTestData(cls):
Delivery.objects.create(customerId=1, angelId=23, orderId=2, estimatedTime='20:00',
Delivery.objects.create(customerId=1, angelId=23, orderId=2,
customerConfirmation=True, angelConfirmation=True)

def test_customer_id_label(self):
Expand All @@ -26,11 +26,6 @@ def test_order_id_label(self):
field_label = delivery._meta.get_field('orderId').verbose_name
self.assertEquals(field_label, 'orderId')

def test_estimated_time_label(self):
delivery = Delivery.objects.get(id=1)
field_label = delivery._meta.get_field('estimatedTime').verbose_name
self.assertEquals(field_label, 'estimatedTime')

def test_customer_confirmation_label(self):
delivery = Delivery.objects.get(id=1)
field_label = delivery._meta.get_field('customerConfirmation').verbose_name
Expand Down Expand Up @@ -77,7 +72,7 @@ class OrderModelTest(TestCase):
@classmethod
def setUpTestData(cls):
Order.objects.create(customerId=12, name='Del', description='seven years bad luck',
expectedDeliveryTime='04:00', status='0', weight='100', cost='100',
expectedDeliveryTime='04:00:00', status='0', weight='100', cost='100',
fee='50', address='Inno basement', possibleAngelsIds=[123, 456],
picture='https://qwerty.com')

Expand Down Expand Up @@ -141,6 +136,11 @@ def test_name_max_length(self):
max_length = order._meta.get_field('name').max_length
self.assertEquals(max_length, 100)

def test_time_max_length(self):
order = Order.objects.get(id=1)
max_length = order._meta.get_field('expectedDeliveryTime').max_length
self.assertEquals(max_length, 50)

def test_description_max_length(self):
order = Order.objects.get(id=1)
max_length = order._meta.get_field('description').max_length
Expand Down
78 changes: 56 additions & 22 deletions backend/tests/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,14 @@
class DeliveryViewTest(TestCase):
@classmethod
def setUpTestData(cls):
number_of_delivery = 13
User.objects.create(token='123', passwordMd5hash='qwerty12345', name='Del',
phoneNumber='88005553535',
email='yepper@gmail.com', age='14', deliveryRate=5.0,
createdOrdersHistoryIds=[123, 456], deliveredOrdersHistoryIds=[45])
number_of_delivery = 2
for delivery_num in range(number_of_delivery):
Delivery.objects.create(customerId=delivery_num, angelId=delivery_num + 1, orderId=delivery_num + 2,
estimatedTime='20:00', customerConfirmation=True, angelConfirmation=True)
Delivery.objects.create(customerId=delivery_num, angelId=1, orderId=delivery_num + 2,
customerConfirmation=True, angelConfirmation=True)

def test_view_url_exists_at_desired_location(self):
resp = self.client.get('/delivery/?token=123')
Expand All @@ -24,32 +28,30 @@ def test_view_url_accessible_by_name(self):

def test_post_url_exists_at_desired_location(self):
resp = self.client.post('/delivery/?token=123', {
"customerId": 12,
"angelId": 123,
"customerId": 1,
"angelId": 1,
"orderId": 90,
"estimatedTime": "20:00",
"customerConfirmation": True,
"angelConfirmation": True
})
self.assertEqual(resp.status_code, 201)

def test_post_url_accessible_by_name(self):
resp = self.client.post(reverse('delivery') + '?token=123', {
"customerId": 12,
"angelId": 123,
"customerId": 1,
"angelId": 1,
"orderId": 90,
"estimatedTime": "20:00",
"customerConfirmation": True,
"angelConfirmation": True
})
self.assertEqual(resp.status_code, 201)

def test_view_url_by_order_exists_at_desired_location(self):
resp = self.client.get('/delivery/1?token=123')
resp = self.client.get('/delivery/3?token=123')
self.assertEqual(resp.status_code, 200)

def test_view_url_by_order_accessible_by_name(self):
resp = self.client.get(reverse('delivery by id', args=[1]) + '?token=123')
resp = self.client.get(reverse('delivery by id', args=[3]) + '?token=123')
self.assertEqual(resp.status_code, 200)

def test_view_url_not_found_at_desired_location(self):
Expand All @@ -60,6 +62,20 @@ def test_view_url_not_found_by_name(self):
resp = self.client.get(reverse('delivery by id', args=[99]) + '?token=123')
self.assertEqual(resp.status_code, 404)

def test_put_url_exists_at_desired_location(self):
resp = self.client.put('/delivery/3?token=123', {
"customerConfirmation": "true",
"angelConfirmation": "true"
}, content_type='application/json')
self.assertEqual(resp.status_code, 200)

def test_put_url_accessible_by_name(self):
resp = self.client.put(reverse('delivery') + '3?token=123', {
"customerConfirmation": "true",
"angelConfirmation": "true"
}, content_type='application/json')
self.assertEqual(resp.status_code, 200)


class FeedbackViewTest(TestCase):
@classmethod
Expand All @@ -74,9 +90,13 @@ class OrdersViewTest(TestCase):
@classmethod
def setUpTestData(cls):
number_of_orders = 5
User.objects.create(token='123', passwordMd5hash='qwerty12345', name='Del',
phoneNumber='88005553535',
email='yepper@gmail.com', age='14', deliveryRate=5.0,
createdOrdersHistoryIds=[123, 456], deliveredOrdersHistoryIds=[45])
for order_num in range(number_of_orders):
Order.objects.create(customerId=order_num, name='Del', description='seven years bad luck',
expectedDeliveryTime='04:00', status='0', weight='100', cost='100',
expectedDeliveryTime='04:00:00', status='0', weight='100', cost='100',
fee='50', address='Inno basement', possibleAngelsIds=[123, 456],
picture='https://qwerty.com')

Expand Down Expand Up @@ -123,10 +143,10 @@ def test_view_url_accessible_by_name_filter4(self):

def test_post_url_exists_at_desired_location(self):
resp = self.client.post('/orders/?token=123', {
"customerId": 12,
"customerId": 1,
"name": "Jack",
"description": "1234",
"expectedDeliveryTime": "2022-06-20",
"expectedDeliveryTime": "04:00:00",
"status": "2",
"weight": "55.00",
"cost": 55,
Expand All @@ -142,10 +162,10 @@ def test_post_url_exists_at_desired_location(self):

def test_post_url_accessible_by_name(self):
resp = self.client.post(reverse('orders') + '?token=123', {
"customerId": 12,
"customerId": 1,
"name": "Jack",
"description": "1234",
"expectedDeliveryTime": "2022-06-20",
"expectedDeliveryTime": "04:00:00",
"status": "2",
"weight": "55.00",
"cost": 55,
Expand Down Expand Up @@ -202,8 +222,8 @@ def setUpTestData(cls):
number_of_users = 10
for user_num in range(number_of_users):
User.objects.create(token='123', passwordMd5hash='qwerty12345', name='Del ' + str(user_num),
phoneNumber='88005553535',
email='yepper@gmail.com', age='14', deliveryRate=5.0,
phoneNumber='88005553535 ' + str(user_num),
email='yepper@gmail.com ' + str(user_num), age='14', deliveryRate=5.0,
createdOrdersHistoryIds=[123, 456], deliveredOrdersHistoryIds=[45])

def test_view_url_by_user_exists_at_desired_location(self):
Expand All @@ -222,16 +242,30 @@ def test_view_url_not_found_by_name(self):
resp = self.client.get(reverse('user by id', args=[99]) + '?token=123')
self.assertEqual(resp.status_code, 404)

def test_post_url_sign_in_exists_at_desired_location(self):
def test_post_url_sign_in_exists_at_desired_location_number(self):
resp = self.client.post('/sign_in/', {
"name": "88005553535 0",
"passwordMd5hash": "qwerty12345"
})
self.assertEqual(resp.status_code, 200)

def test_post_url_sign_in_accessible_by_name_number(self):
resp = self.client.post(reverse('sign_in'), {
"name": "88005553535 0",
"passwordMd5hash": "qwerty12345"
})
self.assertEqual(resp.status_code, 200)

def test_post_url_sign_in_exists_at_desired_location_email(self):
resp = self.client.post('/sign_in/', {
"name": "Del 0",
"name": "yepper@gmail.com 0",
"passwordMd5hash": "qwerty12345"
})
self.assertEqual(resp.status_code, 200)

def test_post_url_sign_in_accessible_by_name(self):
def test_post_url_sign_in_accessible_by_name_email(self):
resp = self.client.post(reverse('sign_in'), {
"name": "Del 0",
"name": "yepper@gmail.com 0",
"passwordMd5hash": "qwerty12345"
})
self.assertEqual(resp.status_code, 200)
Expand Down