godog/pkg/formatters/ast/features/app.feature

133 строки
3,7 КиБ
Gherkin

# language: ru
Функционал: AST-редактир go-файлов
Сгенерированные функции автоматически добавляются в тест-файл текущего пакета
Сценарий: Добавление функции
Дано Файл "mypkg_test.go":
```
package mypkg
```
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func ПриветМир() {
}
```
Сценарий: Добавление функции с параметрами: int
Дано Файл "mypkg_test.go":
```
package mypkg
```
Дано Параметр: "arg1", "int"
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func ПриветМир(arg1 int) {
}
```
Сценарий: Добавление функции с параметрами: int, string
Дано Файл "mypkg_test.go":
```
package mypkg
```
Дано Параметр: "arg1", "int"
Дано Параметр: "arg2", "string"
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func ПриветМир(arg1 int, arg2 string) {
}
```
Сценарий: Добавление функции с параметрами: string, int
Дано Файл "mypkg_test.go":
```
package mypkg
```
Дано Параметр: "arg1", "string"
Дано Параметр: "arg2", "int"
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func ПриветМир(arg1 string, arg2 int) {
}
```
Сценарий: Добавление функции к существующей
Дано Файл "mypkg_test.go":
```
package mypkg
func СделатьЧтото(arg1 string, arg2 int) {
a := 1
}
```
Дано Параметр: "arg1", "int"
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func СделатьЧтото(arg1 string, arg2 int) {
a := 1
}
func ПриветМир(arg1 int) {
}
```
Сценарий: Не добавляет если такая функция уже есть
Дано Файл "mypkg_test.go":
```
package mypkg
func ПриветМир(arg1 string, arg2 int) {
a := 1
}
```
Дано Параметр: "arg1", "int"
Когда Добавляется функция "ПриветМир"
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func ПриветМир(arg1 string, arg2 int) {
a := 1
}
```
Сценарий: Не добавляет второй раз
Дано Файл "mypkg_test.go":
```
package mypkg
```
Дано Параметр: "arg1", "int"
Когда Добавляется функция "ПриветМир"
Когда Добавляется функция "ПриветМир"
То Файл "mypkg_test.go" должен содержать:
```
package mypkg
func ПриветМир(arg1 int) {
}
```