Skip to content
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

TDD Плагин "Настройки" Метод ЕстьНастройка работает не в соответствии со своим описанием. Альтернативный метод ЕстьЗначениеНастройки. #801

Merged
merged 37 commits into from
Nov 7, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
9fdb3f1
issues #784 Отображение пути к загруженным настройкам в браузере тестов
petypen Oct 15, 2020
5ca16f1
Merge branch 'feature.PathSettingsView' into develop
petypen Oct 15, 2020
fad094e
Merge remote-tracking branch 'upstream/develop' into develop
petypen Oct 17, 2020
8f4a2bb
Исправлен метод ЕстьНастройка
petypen Oct 20, 2020
c868558
feature: Добавлен метод ЗагрузитьНастройки
petypen Oct 20, 2020
87afc8f
feature: добавлен тест для плагина Настройки
petypen Oct 20, 2020
4e35d9b
feature: изменен метод ЗагрузитьНастройки
petypen Oct 20, 2020
bc21512
В тест добавлен метод ЕстьНастройка
petypen Oct 20, 2020
7efadc4
fix: вернул код метода ЕстьНастройка к исходному виду
petypen Oct 20, 2020
e05ad20
tests: Добавлены тесты для тестирования старой функции
petypen Oct 21, 2020
3ebe839
feature, refactor: Добавил метод ЕстьНастройка2
petypen Oct 21, 2020
e3b8348
Merge remote-tracking branch 'upstream/develop' into develop
petypen Oct 25, 2020
7f80acb
doc: уточнен раздел справки "Текучие-(fluent)-утверждения"
petypen Oct 25, 2020
3b1fabd
tests: В тест добавлены методы новые методы
petypen Oct 25, 2020
1826040
feature: в модуль объекта плагина добавлен метод
petypen Oct 25, 2020
fe9e8f0
fix: Изменено описание метода ЕстьНастройка
petypen Oct 25, 2020
7d9e423
doc: Добавлено описание метода Метод
petypen Oct 25, 2020
cf10a11
Описание метода
petypen Oct 25, 2020
fd9a1fe
feature, fix: деректива НаКлиенте ненужна
petypen Oct 25, 2020
476d274
tests: Добавлены тесты серверного контекста
petypen Oct 25, 2020
8d69d0c
Merge remote-tracking branch 'upstream/develop' into develop
petypen Oct 26, 2020
9d2c4d8
feature: Изменены методы ДобавитьНастройку, ДобавитьНастройки
petypen Oct 26, 2020
b01fa7b
tests: добавлен тест плагина Настройки
petypen Oct 26, 2020
f61cca9
fix: ошибка в методе ДобавитьНастройки
petypen Oct 26, 2020
c87a8f1
tests: Добавлены дополнительные сценарии для теста ДобавитьНастройки
petypen Oct 26, 2020
0c3defe
fix: Исправлен серверный метод ДобавитьНастройки
petypen Oct 26, 2020
b939455
fix: исправлен метод ДобавитьНастройку
petypen Oct 26, 2020
4b5195f
fix, tests: уточнены тесты
petypen Oct 26, 2020
2442076
doc: документация к плагину Настройки
petypen Oct 26, 2020
a33dee4
doc: справка плагина Настройки встроена в меню
petypen Oct 26, 2020
7b863d6
Merge branch 'issue#795' into feature.Setting
petypen Oct 26, 2020
84969e1
tests: восстановлены тесты после слияния с конфликтами
petypen Oct 26, 2020
9e62a14
fix: удален тестовый метод ЗагрузитьНастройки
petypen Oct 27, 2020
d97fefc
tests: уточнены тесты
petypen Oct 27, 2020
59958f9
doc: добавлено описание методов
petypen Oct 27, 2020
edb61a6
codereview: https://github.com/vanessa-opensource/add/pull/801#discus…
petypen Oct 29, 2020
d6ca209
codereview: https://github.com/vanessa-opensource/add/pull/801#discus…
petypen Oct 29, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions doc/xdd/README.MD
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
* [ПарсерКоманднойСтроки](ПарсерКоманднойСтроки.MD)
* [ЗапросыИзБД](ЗапросыИзБД.MD)
* [ЗагрузчикПользовательскихНастроек](Загрузчик-пользовательских-настроек.MD)
* [Настройки](Плагин-Настройки.MD)

* [Дымовые тесты (тесты открытия всех форм)](../../tests/smoke)

Expand Down
53 changes: 53 additions & 0 deletions doc/xdd/Плагин-Настройки.MD
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Пользовательские настройки

## Обращение к плагину (пример)

```bsl
Перем КонтекстЯдра;
Перем Настройки;

Процедура Инициализация(КонтекстЯдраПараметр) Экспорт

КонтекстЯдра = КонтекстЯдраПараметр;
Настройки = КонтекстЯдра.Плагин("Настройки");

КонецПроцедуры
```

## Использование плагина
Плагин предназначен для чтения пользовательских настроек из файла настроек, а так же для управления настройками и получения значений настроек.

Файл настроек должен быть в формате JSON. Пример файла настроек:
```json
{
"ПолноеИмяФайлаТестируемойОбработки": "D:\\MyProject\\MyProcess.epf"
}
```

В браузере тестирования xddTrstRunner есть команда для подключения файла настроек
`Загрузить - Загрузить настройки из файла...`
Если настройки подключены, то в дальнейшем, используя программный интерфейс плагина можно получить настройки как коллекция. После чего возможно управление настройками и получение значений конкретных настроек.

## Методы интерфейса

`ПолучитьНастройки()` - процедура позволяет получить настройки из подключенного файла настроек. Настройки из файла загружаются в фиксированную структуру Настройки. Получение данных из этой структуры или добавление в нее новых настроек производится с применением методов программного интерфейса.

`ДобавитьНастройку(Ключ, Значение)` - процедура позволяет добавить настройку к текущим настройкам
Параметры:
Ключ - Строка - наименование добавляемой настройки
Значение - Произвольное - значение добавляемой настройки

`ДобавитьНастройки(ИсточникНастроек)` - процедура позволяет добавить настройки к текущим настройкам
Параметры:
ИсточникНастроек - Структура | Фиксированная структура - коллекция с новыми настройками, которые нужно добавить к текущим настройкам

`ЕстьНастройка(ПутьНастроек, СтруктураНастроек)` - функция позволяет проверить, что настройка существует. Возвращает признак Настройка существует (Булево)
Параметры:
ПутьНастроек - Строка - Ключ настройки или путь до настройки, как строка ключей, разделенных точкой, например "Ключ1.Ключ2"
СтруктураНастроек - Структура | Неопределено - исходная структура, которая содержит значение искомой настройки

`ЕстьЗначениеНастройки(ПутьНастроек, ЗначениеНастройки)` - функция позволяет получить значение настройки по указанному имени или пути, а также проверяет, имеется ли настройка по указанному пути. Возвращаемое значение - Булево - признак того, что настройка найдена

Параметры:
ПутьНастроек - Строка - Путь из ключей настройки, разделенных точкой, например: "Ключ1.Ключ2"
ЗначениеНастройки - Произвольный - (выходной параметр) найденное значение настройки. Если ключа или пути из ключей нет в настройках, то возвращается Неопределено.
1 change: 1 addition & 0 deletions doc/xdd/Система-плагинов.MD
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
## Существующие плагины и утилиты

- [Генерация макета на базе реальных данных](Генерация-данных.MD)
- [Пользовательские настройки](Плагин-Настройки.MD)
- [Полный список актуальных плагинов располагается в каталоге "/plugins"](/plugins)

## Плагины, отвечающие за вызов утверждений
Expand Down
48 changes: 33 additions & 15 deletions doc/xdd/Текучие-(fluent)-утверждения.MD
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,14 @@
<!-- TOC -->

- [Текучие-(fluent)-утверждения](#текучие-fluent-утверждения)
- [Введение](#введение)
- [Обращение к плагину (пример)](#обращение-к-плагину-пример)
- [Из кода шагов (BDD), запускаемых через `bddRunner`](#из-кода-шагов-bdd-запускаемых-через-bddrunner)
- [Из кода тестов (TDD), запускаемых через `xddTestRunner`](#из-кода-тестов-tdd-запускаемых-через-xddtestrunner)
- [Публичный интерфейс](#публичный-интерфейс)
- [Примеры использования](#примеры-использования)
- [Пример немного сложнее](#пример-немного-сложнее)
- [Введение](#введение)
- [Обращение к плагину (пример)](#обращение-к-плагину-пример)
- [Из кода шагов (BDD), запускаемых через `bddRunner`](#из-кода-шагов-bdd-запускаемых-через-bddrunner)
- [Из кода тестов (TDD), запускаемых через `xddTestRunner`](#из-кода-тестов-tdd-запускаемых-через-xddtestrunner)
- [Публичный интерфейс](#публичный-интерфейс)
- [Примеры использования](#примеры-использования)
- [Базовый пример](#базовый-пример)
- [Пример немного сложнее](#пример-немного-сложнее)

<!-- /TOC -->

Expand Down Expand Up @@ -50,7 +51,7 @@

Процедура ТестДолжен() Экспорт
Ожидаем.Что(НекийМассив.Количество(), "Ожидали 9 элементов, но это не так")
.ЭтоНе()
.Не_()
.Равно(9);
КонецПроцедуры
```
Expand All @@ -66,35 +67,42 @@

- `ЭтоЛожь()` — утверждает, что проверяемое значение является Ложью.

- `ЭтоNull()` — утверждает, что проверяемое значение это Null.

- `ЭтоНеопределено()` — утверждает, что проверяемое значение это Неопределено.

- `Равно(ОжидаемоеЗначение)` — утверждает, что проверяемое значение равно ожидаемому.

- `Больше(МеньшееЗначение)` — утверждает, что проверяемое значение больше, чем переданное в утверждение.

- `Меньше(БольшееЗначение)` — утверждает, что проверяемое значение меньше, чем переданное в утверждение.

- `БольшеИлиРавно(МеньшееИлиРавноеЗначение)` / `Минимум(МинимальноеЗначение)` — утверждает, что проверяемое значение больше или равно переданному в утверждение.

- `МеньшеИлиРавно(БольшееИлиРавноеЗначение)` / `Максимум(МаксимальноеЗначение)` — утверждает, что проверяемое значение меньше или равно переданному в утверждение.

- `Меньше(БольшееЗначение)` — утверждает, что проверяемое значение меньше, чем переданное в утверждение.
- `Между(НачальноеЗначение, КонечноеЗначение)` — утверждает, что проверяемое значение находится между переданными в утверждение значениями.

- `Заполнено()` — утверждает, что проверяемое значение отличается от значения по умолчанию того же типа.

- `Существует()` — утверждает, что проверяемое значение не Null и не Неопределено.

- `ЭтоНеопределено()` — утверждает, что проверяемое значение это Неопределено.

- `ЭтоNull()` — утверждает, что проверяемое значение это Null.
- `Содержит(ИскомоеЗначение)` — утверждает, что проверяемое значение содержит переданное в утверждение. Применяется для строк и коллекций.

- `ИмеетТип(Тип)` — утверждает, что проверяемое значение имеет переданный в утверждение тип или имя типа.

- `Между(НачальноеЗначение, КонечноеЗначение)` — утверждает, что проверяемое значение находится между переданными в утверждение значениями.
- `ИмеетДлину(ОжидаемаяДлина)` — утверждает, что проверяемое значение имеет длину переданную в утверждение. Применяется для строк и коллекций.

- `Содержит(ИскомоеЗначение)` — утверждает, что проверяемое значение содержит переданное в утверждение. Применяется для строк и коллекций.
- `ВыбрасываетИсключение(ФрагментТекстаИсключения)` — утверждает, что при вызове метода с помощью Метод() платформа формирует исключение с информацией содержащей ФрагментТекстаИсключения (необязательный параметр).

- `ИмеетДлину(ОжидаемаяДлина)` — утверджает, что проверяемое значение имеет длину переданную в утверждение. Применяется для строк и коллекций.
- `Метод(ИмяМетода, ПараметрыМетода)` - вызывает метод с именем ИмяМетода и параметрами ПараметрыМетода. ПараметрыМетода (необязательный параметр) произвольного типа или массив для передачи нескольких параметров в метод.

<a id="markdown-примеры-использования" name="примеры-использования"></a>
## Примеры использования

<a id="markdown-базовый-пример" name="базовый-пример"></a>
### Базовый пример

```bsl
Ожидаем.Что(1 > 0).ЭтоИстина();
Ожидаем.Что(13 = 2).Не_().ЭтоИстина();
Expand Down Expand Up @@ -126,3 +134,13 @@
.ИмеетДлину(12)
.Не_().Содержит("!!!");
```

```bsl
ПараметрыМетода = Новый Массив();
ПараметрыМетода.Добавить("ЗначениеПараметра_1");
ПараметрыМетода.Добавить("ЗначениеПараметра_2");

Ожидаем.Что("Метод МетодСДвумяПараметрами вызывается и не генерирует исключений, но это не так.")
.Метод("МетодСДвумяПараметрами", ПараметрыМетода)
.Не_().ВыбрасываетИсключение();
```
Loading