A1sCode библиотека 1С

A1sJ.SelfTest

Назначение: самопроверка модуля A1sJ: прогоняет базовые тесты ToJSON/FromJSON и JsonEqual и пишет результат в лог.

Сигнатура

Function SelfTest() Export

Как работает (по исходному коду)

 Export
    // Тест ToJSON + FromJSON: число
    n = 100;
    json = ToJSON(n);
    If FromJSON(json) <> n Тогда A1sS.Print("SelfTest FAILED: ToJSON/FromJSON число","SelfTest",""); Return False; КонецЕсли;
    
    // Тест ToJSON + FromJSON: структура
    s = Новый Структура("X,Y",5,10);
    json = ToJSON(s);
    res = FromJSON(json);
    If Не (res.X = 5 И res.Y = 10) Тогда A1sS.Print("SelfTest FAILED: ToJSON/FromJSON структура","SelfTest",""); Return False; КонецЕсли;

    // Тест JsonEqual
    If Не JsonEqual(1,1,1) Тогда A1sS.Print("SelfTest FAILED: JsonEqual равные","SelfTest",""); Return False; КонецЕсли;
    If JsonEqual(1,2) Тогда A1sS.Print("SelfTest FAILED: JsonEqual разные","SelfTest",""); Return False; КонецЕсли;

    A1sS.Print("A1sJ: SelfTest passed","SelfTest","");
    Возврат Истина;

Параметры

Без параметров.

Возвращает

Булево — Истина, если все проверки пройдены; Ложь — если есть падения.

Примеры

Если Не A1sJ.SelfTest() Тогда
    Сообщить("A1sJ: тест провален — см. лог.");
КонецЕсли;

Нюансы и ограничения

✅ Полезно запускать в post-install скриптах
❗ Пишет в лог через A1sS.Print
❗ Тесты базовые — не покрывают все edge-case