From 734267266d3b537ffbd313bcf539a08dcecaaa6b Mon Sep 17 00:00:00 2001 From: Carlos Vega <carlos.vega@uni.lu> Date: Mon, 22 Oct 2018 12:46:26 +0200 Subject: [PATCH] added test for get_worker_availability --- smash/web/tests/api_views/test_worker.py | 31 +++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/smash/web/tests/api_views/test_worker.py b/smash/web/tests/api_views/test_worker.py index c146d560..1d127e96 100644 --- a/smash/web/tests/api_views/test_worker.py +++ b/smash/web/tests/api_views/test_worker.py @@ -1,6 +1,6 @@ # coding=utf-8 import json - +import datetime from django.test import RequestFactory from django.urls import reverse @@ -85,3 +85,32 @@ class TestWorkerApi(LoggedInWithWorkerTestCase): for entry in entries: count += len(entry["workers"]) self.assertTrue(count > 0) + def test_get_worker_availability(self): + today = datetime.datetime.today().replace(hour=8, minute=00, second=0, microsecond=0) + availability = Availability.objects.create(person=self.worker, day_number=today.isoweekday(), + available_from="8:00", available_till="16:00") + availability.save() + params={} + params['start_date'] = today.strftime("%Y-%m-%d-%H-%M") + params['end_date'] = (today+datetime.timedelta(hours=4)).strftime("%Y-%m-%d-%H-%M") + params['worker_id'] = self.worker.id + response = self.client.get(reverse('web.api.get_worker_availability'), data=params) + availability = json.loads(response.content)['availability'] + self.assertEqual(availability, 100.0) + today = today.replace(hour=16, minute=1) + params={} + params['start_date'] = today.strftime("%Y-%m-%d-%H-%M") + params['end_date'] = (today+datetime.timedelta(hours=4)).strftime("%Y-%m-%d-%H-%M") + params['worker_id'] = self.worker.id + response = self.client.get(reverse('web.api.get_worker_availability'), data=params) + availability = json.loads(response.content)['availability'] + self.assertEqual(availability, 0.0) + today = today.replace(hour=14, minute=0) + params={} + params['start_date'] = today.strftime("%Y-%m-%d-%H-%M") + params['end_date'] = (today+datetime.timedelta(hours=4)).strftime("%Y-%m-%d-%H-%M") + params['worker_id'] = self.worker.id + response = self.client.get(reverse('web.api.get_worker_availability'), data=params) + availability = json.loads(response.content)['availability'] + self.assertEqual(availability, 50.0) + \ No newline at end of file -- GitLab