|
| 1 | +Описание публичного интерфейса библиотеки |
| 2 | +======================== |
| 3 | +<!-- TOC --> |
| 4 | + |
| 5 | +- [Стандартная библиотека шагов](#стандартная-библиотека-шагов) |
| 6 | + - [Управление файлами и каталогами](#управление-файлами-и-каталогами) |
| 7 | + - [Постоянные и временные каталоги](#постоянные-и-временные-каталоги) |
| 8 | + - [Создание каталогов](#создание-каталогов) |
| 9 | + - [Создание файлов](#создание-файлов) |
| 10 | + - [Создание и анализ файлов с нужным текстом](#создание-и-анализ-файлов-с-нужным-текстом) |
| 11 | + - [Копирование файлов и каталогов](#копирование-файлов-и-каталогов) |
| 12 | + - [Удаление каталогов и файлов](#удаление-каталогов-и-файлов) |
| 13 | + - [Проверка существования каталогов и файлов](#проверка-существования-каталогов-и-файлов) |
| 14 | + |
| 15 | +<!-- /TOC --> |
| 16 | + |
| 17 | +<a id="markdown-стандартная-библиотека-шагов" name="стандартная-библиотека-шагов"></a> |
| 18 | +## Стандартная библиотека шагов |
| 19 | + |
| 20 | +>для использования в собственных фичах |
| 21 | +
|
| 22 | +Стандартные библиотечные шаги, подключаемые автоматически для любой фичи, находятся в каталоге `features/libraries/Файлы` |
| 23 | + |
| 24 | +- `Файловые операции.feature` - создание файлов/каталогов, их копирование, анализ содержимого файлов |
| 25 | + |
| 26 | +### Управление файлами и каталогами |
| 27 | + |
| 28 | +<a id="markdown-постоянные-и-временные-каталоги" name="постоянные-и-временные-каталоги"></a> |
| 29 | +#### Постоянные и временные каталоги |
| 30 | + |
| 31 | +- `И Я сохраняю каталог проекта в контекст` |
| 32 | +- `Дано Я создаю временный каталог и сохраняю его в переменной "СпециальныйКаталог"` |
| 33 | +- `Допустим Я создаю временный каталог и сохраняю его в контекст` |
| 34 | +- `И Я устанавливаю временный каталог как рабочий каталог` |
| 35 | +- `И Я установил подкаталог "folder0" рабочего каталога как текущий каталог` |
| 36 | + |
| 37 | +- `И Я показываю текущий каталог` |
| 38 | +- `Тогда Я показываю каталог проекта` |
| 39 | +- `И Я показываю рабочий каталог` |
| 40 | + |
| 41 | +<a id="markdown-создание-каталогов" name="создание-каталогов"></a> |
| 42 | +#### Создание каталогов |
| 43 | + |
| 44 | +- `И Я создаю каталог "folder0/folder01" в рабочем каталоге` |
| 45 | +- `И Я создаю каталог "folder011" в подкаталоге "folder0/folder01" рабочего каталога` |
| 46 | + |
| 47 | +- `Когда Я создаю каталог "СпециальныйКаталог/folder0/folder01"` |
| 48 | +- `Когда Я создаю каталог "folder1/folder11" внутри каталога "СпециальныйКаталог"` |
| 49 | + |
| 50 | +- `Допустим Я создаю временный каталог и сохраняю его в контекст` |
| 51 | + |
| 52 | +<a id="markdown-создание-файлов" name="создание-файлов"></a> |
| 53 | +#### Создание файлов |
| 54 | + |
| 55 | +- `Когда Я создаю файл "folder0/file01.txt" в рабочем каталоге` |
| 56 | +- `И Я создаю файл "file01" в подкаталоге "folder0/folder01" рабочего каталога` |
| 57 | + |
| 58 | +- `Когда Я создаю файл "СпециальныйКаталог/file01.txt"` |
| 59 | + |
| 60 | +- `Когда Я создаю файл "folder1/file11.txt" внутри каталога "СпециальныйКаталог"` |
| 61 | +- `Тогда Файл "СпециальныйКаталог/folder1/file11.txt" существует` |
| 62 | + |
| 63 | +<a id="markdown-создание-и-анализ-файлов-с-нужным-текстом" name="создание-и-анализ-файлов-с-нужным-текстом"></a> |
| 64 | +#### Создание и анализ файлов с нужным текстом |
| 65 | + |
| 66 | +- `Когда Я создаю файл "СпециальныйКаталог/ФайлСТекстом.txt" с текстом "текст178"` |
| 67 | +- `Тогда Файл "СпециальныйКаталог/ФайлСТекстом.txt" содержит "178"` |
| 68 | + |
| 69 | +- `Когда Я создаю файл "СпециальныйКаталог/ФайлСТекстом.txt" с текстом` |
| 70 | + |
| 71 | +```gherkin |
| 72 | + Когда Я создаю файл "СпециальныйКаталог/ФайлСТекстом.txt" с текстом |
| 73 | + """ |
| 74 | + строка 1 |
| 75 | + строка 2 |
| 76 | + """ |
| 77 | + Тогда Файл "СпециальныйКаталог/ФайлСТекстом.txt" содержит |
| 78 | + """ |
| 79 | + строка 1 |
| 80 | + строка 2 |
| 81 | + """ |
| 82 | +``` |
| 83 | + |
| 84 | +- `Тогда Файл "folder0/file01.txt" содержит "Текст файла"` |
| 85 | +- `И Файл "folder0/file01.txt" не содержит "Не существующий текст"` |
| 86 | + |
| 87 | +- `Тогда Файл "folder0/file01.txt" в рабочем каталоге содержит "Текст файла"` |
| 88 | +- `И Файл "folder0/file01.txt" в рабочем каталоге не содержит "Не существующий текст"` |
| 89 | + |
| 90 | +<a id="markdown-копирование-файлов-и-каталогов" name="копирование-файлов-и-каталогов"></a> |
| 91 | +#### Копирование файлов и каталогов |
| 92 | + |
| 93 | +- `Когда Я копирую файл "step_definitions/БезПараметров.os" из каталога "tests/fixtures" проекта в рабочий каталог` |
| 94 | +- `И Я копирую файл "fixtures/test-report.xml" из каталога "tests" проекта в подкаталог "folder0/folder01" рабочего каталога` |
| 95 | + |
| 96 | +- `Когда Я копирую каталог "fixtures/step_definitions" из каталога "tests/fixtures" проекта в рабочий каталог` |
| 97 | +- `И Я копирую каталог "fixtures/step_definitions" из каталога "tests" проекта в подкаталог "folder0/folder01" рабочего каталога` |
| 98 | + |
| 99 | +<a id="markdown-удаление-каталогов-и-файлов" name="удаление-каталогов-и-файлов"></a> |
| 100 | +#### Удаление каталогов и файлов |
| 101 | + |
| 102 | +- `Когда Я удаляю каталог "СпециальныйКаталог/КаталогДляУдаления"` |
| 103 | +- `Когда Я удаляю файл "СпециальныйКаталог/ФайлДляУдаления.txt"` |
| 104 | + |
| 105 | +<a id="markdown-проверка-существования-каталогов-и-файлов" name="проверка-существования-каталогов-и-файлов"></a> |
| 106 | +#### Проверка существования каталогов и файлов |
| 107 | + |
| 108 | +- `Тогда Каталог "СпециальныйКаталог/folder0" существует` |
| 109 | + - или `Тогда Каталог "СпециальныйКаталог/folder0/folder01" существует` |
| 110 | + |
| 111 | +- `И Каталог "СпециальныйКаталог/folder0/folder01-unknown" не существует` |
| 112 | + |
| 113 | +- `Тогда Файл "СпециальныйКаталог/file01.txt" существует` |
| 114 | +- `И Файл "folder01/file01-unknown.txt" не существует` |
| 115 | + |
| 116 | +- `Тогда В рабочем каталоге существует каталог "folder0/folder01"` |
| 117 | +- `И В подкаталоге "folder0/folder01" рабочего каталога существует каталог "folder011"` |
| 118 | +- `И В подкаталоге "folder0/folder01" рабочего каталога существует каталог "*011"` |
| 119 | + |
| 120 | +- `Тогда Каталог "folder0" внутри каталога "СпециальныйКаталог" существует` |
| 121 | + - или `И Каталог "folder0/folder01" внутри каталога "СпециальныйКаталог" существует` |
| 122 | + |
| 123 | +- `И Каталог "folder0/folder01-unknown" внутри каталога "СпециальныйКаталог" не существует` |
| 124 | + |
| 125 | +- `Тогда В рабочем каталоге существует файл "folder0/file01.txt"` |
| 126 | + - или `Тогда В рабочем каталоге существует файл "folder0/*01.txt"` |
| 127 | +- `И В подкаталоге "folder0/folder01" рабочего каталога существует файл "file01"` |
| 128 | + - или `И В подкаталоге "folder0/folder01" рабочего каталога существует файл "*01"` |
0 commit comments