def setUp(self): self.BaseSetUp() self.repo = VendorRatingRepo() self.location = LocationFactory() self.vendor = VendorFactory() self.engagement = VendorEngagementFactory(location_id=self.location.id, vendor_id=self.vendor.id)
def setUp(self): self.BaseSetUp() location = LocationFactory() self.mock_vendor = Vendor(id=1, created_at=datetime.now(), updated_at=datetime.now(), name='Mock vendor', address='Mock address', tel='', contact_person='Mock person', is_active=True, location_id=location.id) self.mock_vendor_engagement = VendorEngagement( id=1, created_at=datetime.now(), updated_at=datetime.now(), location_id=location.id, start_date=datetime.now(), end_date=datetime.now(), status=1, termination_reason='Mock reason', vendor=self.mock_vendor) self.mock_menu = Menu(is_deleted=False, date=datetime.now(), meal_period='', location_id=location.id, main_meal_id=1, allowed_side=1, allowed_protein=1, side_items='', protein_items='', vendor_engagement_id=1, created_at=datetime.now(), updated_at=datetime.now()) self.mock_vendor_engagement = VendorEngagement( id=1, created_at=datetime.now(), updated_at=datetime.now(), location_id=location.id, start_date=datetime.now(), end_date=datetime.now(), status=1, termination_reason='Mock reason', vendor=self.mock_vendor, menus=[ self.mock_menu, ]) self.mock_vendor_engagement_no_child = VendorEngagement( id=1, created_at=datetime.now(), updated_at=datetime.now(), location_id=location.id, start_date=datetime.now(), end_date=datetime.now(), status=1, termination_reason='Mock reason', vendor=self.mock_vendor)
def setUp(self): self.BaseSetUp() self.repo = OrderRepo() self.location = LocationFactory() self.meal_item = MealItemFactory(location_id=self.location.id) self.vendor_engagement = VendorEngagementFactory( location_id=self.location.id) self.menu = MenuFactory(location_id=self.location.id, main_meal_id=self.meal_item.id, vendor_engagement_id=self.vendor_engagement.id)
def test_creating_vendor_gets_logged(self): vendor = Vendor( name='Your name', address='Your Address', tel='12345678', contact_person='Contact Person', location=LocationFactory(), ) vendor.save() activity = [ activity.action_details for activity in Activity.query.all() ] self.assertTrue("created" in activity[0])
def test_hard_delete_on_vendor_model(self): vendor = Vendor( name='Your name', address='Your Address', tel='12345678', contact_person='Contact Person', location=LocationFactory(), ) vendor.save() vendor_id = vendor.id vendor.delete() self.assertEquals(Vendor.query.get(vendor_id), None)
def test_new_meal_session_method_returns_new_meal_session_object(self): location = LocationFactory() meal_session = MealSessionFactory(location=location) new_meal_session = self.repo.new_meal_session( name=meal_session.name, start_time=meal_session.start_time, stop_time=meal_session.stop_time, date=meal_session.date, location_id=meal_session.location.id) self.assertIsInstance(new_meal_session, MealSession) self.assertEqual(new_meal_session.location_id, meal_session.location_id) self.assertEqual(new_meal_session.name, meal_session.name) self.assertEqual(new_meal_session.start_time, meal_session.start_time) self.assertEqual(new_meal_session.stop_time, meal_session.stop_time)
def test_create_user_succeeds(self, mock_request_params, mock_get_location): location = LocationFactory() role = RoleFactory(name='test_role') with self.app.app_context(): mock_get_location.return_value = location.id mock_request_params.return_value = [ "Joseph", "Serunjogi", None, None, "-LXTuXlk2W4Gskt8KTte", role.id ] user_controller = UserController(self.request_context) # Act result = user_controller.create_user() # Assert assert result.status_code == 201 assert result.get_json()['msg'] == 'OK'
def test_create_user_fails_for_existing_user( self, mock_user_role_repo_new_user_role, # mock_user_repo_new_user, mock_user_repo_exists, mock_role_repo_find_first, mock_request_params, mock_get_location, ): location = LocationFactory() role = RoleFactory(name="test_role") with self.app.app_context(): mock_get_location.return_value = location.id mock_role_repo_find_first.return_value = self.mock_role mock_user_repo_exists.return_value = self.mock_user2 # mock_user_repo_new_user.return_value = None mock_user_role_repo_new_user_role.return_value = self.mock_user_role mock_request_params.return_value = [ "Joseph", "Serunjogi", self.mock_user2.email, role.id, "male", str(datetime.now()), 1, "password", ] user_controller = UserController(self.request_context) # Act result = user_controller.create_user() print(result) print(result.get_json()) # Assert assert result.status_code == 400 assert ( result.get_json()["msg"] == f"User with email '{self.mock_user2.email}' already exists")
def test_new_menu_method_returns_new_menu_object(self): location = LocationFactory() meal_item = MealItemFactory.create(location=location) vendor_engagement = VendorEngagementFactory() menu = MenuFactory(location=location, main_meal_id=meal_item.id, vendor_engagement=vendor_engagement) new_menu = self.repo.new_menu(menu.date.strftime('%Y-%m-%d'), menu.meal_period, menu.main_meal_id, menu.allowed_side, menu.allowed_protein, [1, 2], [3, 4], vendor_engagement.id, location.id) self.assertIsInstance(new_menu, Menu) self.assertEqual(new_menu.allowed_protein, menu.allowed_protein) self.assertEqual(new_menu.allowed_side, menu.allowed_protein) self.assertEqual(new_menu.meal_period, menu.meal_period) self.assertIsInstance(new_menu, Menu) self.assertEqual(new_menu.allowed_protein, menu.allowed_protein) self.assertEqual(new_menu.allowed_side, menu.allowed_protein) self.assertEqual(new_menu.meal_period, menu.meal_period)
def test_create_user_succeeds( self, mock_user_role_repo_new_user_role, mock_user_repo_new_user, mock_user_repo_exists, mock_role_repo_find_first, mock_request_params, mock_get_location, ): location = LocationFactory() role = RoleFactory(name="test_role") with self.app.app_context(): mock_get_location.return_value = location.id mock_role_repo_find_first.return_value = self.mock_role mock_user_repo_exists.return_value = None mock_user_repo_new_user.return_value = self.mock_user2 mock_user_role_repo_new_user_role.return_value = self.mock_user_role mock_request_params.return_value = [ "Joseph", "Serunjogi", "*****@*****.**", role.id, "male", str(datetime.now()), 1, "password", ] user_controller = UserController(self.request_context) # Act result = user_controller.create_user() # Assert assert result.status_code == 201 assert result.get_json()["msg"] == "OK"
def setUp(self): self.BaseSetUp() self.fake = Faker() vendor = VendorFactory() location = LocationFactory() self.mock_vendor_engagement = VendorEngagement( id=1, created_at=datetime.now(), updated_at=datetime.now(), vendor_id=vendor.id, location_id=location.id, start_date=datetime.now(), end_date=datetime.now(), status=1, termination_reason=self.fake.text()) self.mock_rating = VendorRating(id=1, created_at=datetime.now(), updated_at=datetime.now(), vendor_id=vendor.id, user_id=1, comment=self.fake.text(), service_date=datetime.now(), rating=1.2, channel='web', type_id=1, engagement_id=1, main_meal_id=1) self.mock_vendor_with_dependants = Vendor( id=1, created_at=datetime.now(), updated_at=datetime.now(), is_deleted=False, name=self.fake.name(), address=self.fake.address(), tel=self.fake.phone_number(), contact_person=self.fake.name(), is_active=True, location_id=location.id, ratings=[ self.mock_rating, ], engagements=[ self.mock_vendor_engagement, ]) self.mock_vendor = Vendor(id=1, created_at=datetime.now(), updated_at=datetime.now(), is_deleted=False, name=self.fake.name(), address=self.fake.address(), tel=self.fake.phone_number(), contact_person=self.fake.name(), is_active=True, location_id=location.id) self.mock_deleted_vendor = Vendor(id=1, created_at=datetime.now(), updated_at=datetime.now(), is_deleted=True, name=self.fake.name(), address=self.fake.address(), tel=self.fake.phone_number(), contact_person=self.fake.name(), is_active=True, location_id=location.id)
def test_create_order_rating_ok_response( self, mock_vendor_engagement_repo_get, mock_meal_item_repo_get, mock_auth_user, mock_vendor_rating_controller_request_params, mock_order_repo_get, mock_vendor_repo_update_average_rating ): '''Test create_order_rating when order has already been rated. ''' # Arrange vendor = VendorFactory() location = LocationFactory() vendor_engagement = VendorEngagementFactory() meal_item = MealItemFactory() menu = MenuFactory() with self.app.app_context(): mock_meal_item = MealItem( id=1, created_at=datetime.now(), updated_at=datetime.now(), meal_type='main', name='Mock meal', image='', location_id=location.id ) mock_vendor_engagement = VendorEngagement( id=1, created_at=datetime.now(), updated_at=datetime.now(), vendor_id=vendor.id, location_id=location.id, start_date=datetime.now(), end_date=(datetime.now() + timedelta(days=5)), status=1, termination_reason='Mock reason' ) mock_order = Order( id=1, created_at=datetime.now(), updated_at=datetime.now(), user_id='user_id', date_booked_for=datetime.now(), date_booked=datetime.now(), channel='web', meal_period='lunch', order_status='booked', has_rated=False, menu_id=menu.id, location_id=location.id ) mock_vendor_rating_controller_request_params.return_value = ( 2, meal_item.id, vendor_engagement.id, 'Mock comment', 3, '2019-02-06', 'web' ) mock_auth_user.return_value = 1 mock_meal_item_repo_get.return_value = mock_meal_item mock_vendor_engagement_repo_get.return_value = \ mock_vendor_engagement mock_order_repo_get.return_value = mock_order vendor_rating_controller = VendorRatingController( self.request_context ) mock_vendor_repo_update_average_rating.return_value = None # Act result = vendor_rating_controller.create_order_rating() # Assert assert result.status_code == 201 assert result.get_json()['msg'] == 'Rating successful'
def setUp(self): self.BaseSetUp() self.repo = VendorEngagementRepo() self.location = LocationFactory() self.vendor = VendorFactory()
def setUp(self): self.BaseSetUp() self.repo = VendorRepo() self.rating_repo = VendorRatingRepo() self.location = LocationFactory()