def test_add_member_ok( self, mock_get_db_conf, mock_get_db_connection, mock_get_member_class_id, mock_member_exists, mock_get_utc_time, mock_add_identifier, mock_add_client, mock_add_client_name): with self.assertLogs(member.LOGGER, level='INFO') as cm: self.assertEqual( { 'code': 'CREATED', 'http_status': 201, 'msg': 'New member added'}, member.add_member('MEMBER_CODE', 'MEMBER_NAME', 'MEMBER_CLASS', 'JSON_DATA')) self.assertEqual([ 'INFO:member:Added new member: member_code=MEMBER_CODE, ' 'member_name=MEMBER_NAME, member_class=MEMBER_CLASS'], cm.output) mock_get_db_conf.assert_called_with() mock_get_db_connection.assert_called_with({ 'database': 'centerui_production', 'password': '******', 'username': '******'}) mock_get_member_class_id.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), 'MEMBER_CLASS') mock_member_exists.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), 'MEMBER_CODE') mock_get_utc_time.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__()) mock_add_identifier.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), member_class='MEMBER_CLASS', member_code='MEMBER_CODE', utc_time='TIME') mock_add_client.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), member_code='MEMBER_CODE', member_name='MEMBER_NAME', class_id=12345, identifier_id=123456, utc_time='TIME') mock_add_client_name.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), member_name='MEMBER_NAME', identifier_id=123456, utc_time='TIME')
def test_add_member_no_username(self, mock_get_db_conf, mock_get_db_connection): with self.assertLogs(member.LOGGER, level='INFO') as cm: self.assertEqual( { 'code': 'DB_CONF_ERROR', 'http_status': 500, 'msg': 'Cannot access database configuration'}, member.add_member('MEMBER_CODE', 'MEMBER_NAME', 'MEMBER_CLASS', 'JSON_DATA')) self.assertEqual( ['ERROR:member:DB_CONF_ERROR: Cannot access database configuration'], cm.output) mock_get_db_conf.assert_called_with() mock_get_db_connection.assert_not_called()
def test_add_member_no_class( self, mock_get_db_conf, mock_get_db_connection, mock_get_member_class_id): with self.assertLogs(member.LOGGER, level='INFO') as cm: self.assertEqual( { 'code': 'INVALID_MEMBER_CLASS', 'http_status': 400, 'msg': 'Provided Member Class does not exist'}, member.add_member('MEMBER_CODE', 'MEMBER_NAME', 'MEMBER_CLASS', 'JSON_DATA')) self.assertEqual([ 'WARNING:member:INVALID_MEMBER_CLASS: Provided Member Class does not exist ' '(Request: JSON_DATA)'], cm.output) mock_get_db_conf.assert_called_with() mock_get_db_connection.assert_called_with({ 'database': 'centerui_production', 'password': '******', 'username': '******'}) mock_get_member_class_id.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), 'MEMBER_CLASS')
def test_add_member_member_exists( self, mock_get_db_conf, mock_get_db_connection, mock_get_member_class_id, mock_member_exists): with self.assertLogs(member.LOGGER, level='INFO') as cm: self.assertEqual( { 'code': 'MEMBER_EXISTS', 'http_status': 409, 'msg': 'Provided Member already exists'}, member.add_member('MEMBER_CODE', 'MEMBER_NAME', 'MEMBER_CLASS', 'JSON_DATA')) self.assertEqual([ 'WARNING:member:MEMBER_EXISTS: Provided Member already exists (Request: ' 'JSON_DATA)'], cm.output) mock_get_db_conf.assert_called_with() mock_get_db_connection.assert_called_with({ 'database': 'centerui_production', 'password': '******', 'username': '******'}) mock_get_member_class_id.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), 'MEMBER_CLASS') mock_member_exists.assert_called_with( mock_get_db_connection().__enter__().cursor().__enter__(), 'MEMBER_CODE')