local json = require('cjson') local log = require('utils.log') local user = require('bitrix.user') -- Настройка логирования log.outfile = 'logs/tests_user_live_'..os.date('%Y-%m-%d_%H-%M-%S')..'.log' log.level = 'trace' log.info("===== СТАРТ ТЕСТИРОВАНИЯ (РЕЖИМ LIVE) =====") -- ID пользователя для тестов. Обычно 1 - это администратор. local test_user_id = 1 --=== ТЕСТЫ ===-- local function test_user_get() log.info('--- Тест: Получение пользователя (get) ---') local result, error_response = user.user.get(test_user_id) if result and result[1] then local user_data = result[1] log.info(string.format('Тест получения пользователя: УСПЕШНО. Имя: "%s %s"', user_data.NAME or '', user_data.LAST_NAME or '')) else log.error('Тест получения пользователя: ПРОВАЛЕНО.') log.error('Ответ сервера: ' .. json.encode(result)) if error_response then log.error('Ошибка: ' .. json.encode(error_response)) end end end local function test_user_getlist() log.info('--- Тест: Листинг пользователей (getlist) ---') -- Фильтр: активные пользователи, у которых есть email local filter = { ACTIVE = 'Y', EMAIL = '%@%' } local result_list, error_response = user.user.getlist({'LAST_NAME', 'NAME'}, filter, {'ID', 'NAME', 'LAST_NAME', 'EMAIL'}, nil, 0) print(json.encode(result_list)) if result_list and #result_list > 0 then log.info(string.format('Тест листинга пользователей: УСПЕШНО. Найдено пользователей: %d', #result_list)) elseif result_list and #result_list == 0 then log.warning('Тест листинга пользователей: Пользователи не найдены по фильтру.') else log.error('Тест листинга пользователей: ПРОВАЛЕНО.') if error_response then log.error('Ответ сервера: ' .. json.encode(error_response)) end end end local function test_user_current() log.info('--- Тест: Получение текущего пользователя (current) ---') local result, error_response = user.user.current() if result and result.ID then log.info(string.format('Тест текущего пользователя: УСПЕШНО. Вы вошли как: "%s %s"', result.NAME or '', result.LAST_NAME or '')) else log.error('Тест текущего пользователя: ПРОВАЛЕНО.') if error_response then log.error('Ответ сервера: ' .. json.encode(error_response)) end end end --=== ЗАПУСК ТЕСТОВ ===-- test_user_get() test_user_getlist() test_user_current() log.info("===== ЗАВЕРШЕНИЕ ТЕСТИРОВАНИЯ =====")