def test_incorrect_argument_type(self): """ Проверка исключения при неправильном типе данных, переданном в качестве аргумента функции create_presence_message() """ with self.assertRaises(TypeError): create_presence_message(['NOT A STRING'])
def test_too_long_argument(self): """ Проверка исключения при слишком длинном имени пользователя, переданном в качестве аргумента функции create_presence_message() """ with self.assertRaises(UsernameTooLongError): long_username = '******' create_presence_message(long_username)
def test_user_account_name_value_is_in(self): """ Проверка наличия значения имени пользователя в ключе ACCOUNT_NAME, в вернувшемся результате работы функции create_presence_message() """ self.assertEqual(create_presence_message()[USER][ACCOUNT_NAME], DEFAULT_ACCOUNT_NAME)
def test_is_account_name_in_user(self): """ Проверка наличия ключа ACCOUNT_NAME в словаре ключа USER, в вернувшемся результате работы функции create_presence_message() """ self.assertTrue(create_presence_message()[USER][ACCOUNT_NAME])
def test_is_user_return(self): """ Проверка наличия ключа USER, в вернувшемся результате работы функции create_presence_message() """ self.assertTrue(create_presence_message()[USER])
def test_time_value_is_in(self): """ Проверка наличия значения времени в ключе ACTION, в вернувшемся результате работы функции create_presence_message() """ self.assertEqual(create_presence_message()[TIME], get_time())
def test_is_time_return(self): """ Проверка наличия ключа TIME, в вернувшемся результате работы функции create_presence_message() """ self.assertTrue(create_presence_message()[TIME])
def test_action_value_is_presence(self): """ Проверка наличия значения PRESENCE в ключе ACTION, в вернувшемся результате работы функции create_presence_message() """ self.assertEqual(create_presence_message()[ACTION], PRESENCE)
def test_is_action_return(self): """ Проверка наличия ключа ACTION, в вернувшемся результате работы функции create_presence_message() """ self.assertTrue(create_presence_message()[ACTION])
def test_is_default_name_returns(self): """ Проверка возврата имени пользователя по умолчанию, если функции create_presence_message() не передалн аргумент """ self.assertEqual(create_presence_message(), { ACTION: PRESENCE, TIME: get_time(), USER: {ACCOUNT_NAME: DEFAULT_ACCOUNT_NAME}})
def test_correct_argument(self): """ Проверка возврата удовлетворительного ответа, при передаче корректных данных в функцию create_presence_message() """ self.assertEqual(create_presence_message('CORRECT NAME'), { ACTION: PRESENCE, TIME: get_time(), USER: {ACCOUNT_NAME: 'CORRECT NAME'}})
def test_presence(self): test = create_presence_message('Guest', CONFIGS=self.CONFIGS) test[self.CONFIGS['TIME']] = 1.1 self.assertEqual( test, { self.CONFIGS['ACTION']: self.CONFIGS['PRESENCE'], self.CONFIGS['TIME']: 1.1, self.CONFIGS['USER']: { self.CONFIGS['ACCOUNT_NAME']: 'Guest' }, })
def test_ok_message(self): test_msg = create_presence_message() test_msg[ TIME] = '123.123' # необходимо задать конкретное время, чтобы проверить self.assertEqual(test_msg, { ACTION: PRESENCE, TIME: '123.123', USER: { ACCOUNT_NAME: 'Demo' } })
def test_create_presence_message(self): print("test_create_presence_message") test = create_presence_message() message = json.dumps( { "action": PRESENCE, "time": TEST_TIME, "type": "status", "user": { "account_name": DEF_USER, "status": "Yep, I am here!!!" } }, indent=4) message2sand: bytes = message.encode('utf-8') self.assertEqual(test, message2sand)