-
Notifications
You must be signed in to change notification settings - Fork 109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Доработки по проверке проекта EDT #259
Доработки по проверке проекта EDT #259
Conversation
Stepa86
commented
Sep 21, 2018
- В отчете Аллюр2 формируется ссылка на строчку кода. Необходимо передать путь к проекту.
- Добавлен параметр --EDTversion для указания конкретной версии EDT
- Больше не падает, если необязательные файлы не существуют. Например, когда EDT не нашел ошибок.
- Небольшие правки по замечаниям
…essa-runner into feature/validate_EDT
…runner into develop # Conflicts: # src/Классы/КомандаПроверкаПроектаEDT.os
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Небольшие замечания
|
||
// Отсутствие этого файла не критично, поэтому обойдемся без исключений | ||
|
||
Лог.Ошибка( "Файл пропускаемых ошибок (--exception-file) %1 не найден.", ИмяФайлаПропускаемыхОшибок ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Отсутствие этого файла не критично
а зачем тогда Лог.Ошибка
выводить?
Предлагаю исправить на Лог.Предупреждение
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Заменил на Предупреждение
|
||
Если компоненты.Количество() > 2 Тогда | ||
|
||
Если ВРег( компоненты[2] ) = "МОДУЛЬОБЪЕКТА" Тогда |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Копипаст
ВРег( компоненты[2] )
- и 4 дублирующихся блока кода
Если ВРег( компоненты[2] ) = "ХХХ" Тогда
компонентыСсылки.Добавить( "YYY.bsl" );
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Поправил
|
||
// Имя объекта | ||
|
||
Если компоненты.Количество() < 1 Тогда |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
условие лучше перенести выше, все равно возвращается ""
Если компоненты.Количество() < 1 Тогда
Возврат "";
КонецЕсли;
|
||
Если ЗначениеЗаполнено( ПутьКФайламПроекта ) Тогда | ||
|
||
кэшСоответствиеМетаданныхКаталогам = СоответствиеМетаданнымКаталогам(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Переменная кэшСоответствиеМетаданныхКаталогам
не всегда заполняется :(
а в коде ниже ты обращаешься к ней безусловно :(
каталог = кэшСоответствиеМетаданныхКаталогам[компоненты[0]];
тут точно нужно исправить код.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В начале функции стоит как раз обратная проверка
Если Не ЗначениеЗаполнено( ПутьКФайламПроекта ) Тогда
Возврат "";
КонецЕсли;
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Проверка стоит - это хорошо.
но вот такая неявная инициализация переменной - это плохо, такой код же читать и сопровождать сложно.
может быть, проверку в начале функции изменить на проверку кэшСоответствиеМетаданныхКаталогам ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
или еще лучше - переменную кэшСоответствиеМетаданныхКаталогам заполнять как раз в этой функции, все равно переменная юзается только внутри функции ??
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Переделал на инициализацию по месту использования
ИмяФайлаРезультата = ПолучитьИмяВременногоФайла("out"); | ||
УдалятьФайлРезультата = Истина; | ||
Лог.Отладка(" Файл результата не задан (--validation-result). Будет использован временный файл."); | ||
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Много пустых строк, в которых есть только пробелы или табы, добавились :(
видимо, в другом редакторе правил?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Как раз в VSC все и правил. Причем он сам мне изменений не показывал таких.
ненужные пробелы в пустых строках убери через VSC, запушь и я замержу. |
@artbear VSC больше ничего не форматирует у меня |
в VSC выполни команду Trim Trailing Whitespaces |
@artbear А зачем их так убирать? Стандартное форматирование Alt+Shift+F их обратно возвращает |
Мержим? |
* wip Обработка умеет выгружать проверку EDT в файлы аллюр * wip Обработка умеет выгружать проверку EDT в файлы аллюр * wip Проверка проекта с помощью EDT * Код проверки проекта EDT завершен * Вернул имя --exception-file, для однотипности с синтаксис-проверкой * Создание ссылок на строку с проблемой в Аллюр-отчете * мерж * Правки по замечаниям * Форматирование, чтоб пробелов не было лишних * Форматирование