Добавлена генерация русских названий функций

Этот коммит содержится в:
Softonik 2022-05-25 05:58:06 +03:00 коммит произвёл Nikolay Kopitonenko
родитель c5a86a4e56
коммит 8c152351c7
3 изменённых файлов: 43 добавлений и 2 удалений

Просмотреть файл

@ -153,3 +153,43 @@ Feature: undefined step snippets
ctx.Step(`^"([^"]*)", which costs £(\d+)$`, whichCosts)
}
"""
Scenario: should generate snippets in russian
Given a feature "undefined.feature" file:
"""
# language: ru
Функционал: суперфича
Сценарий: делает что-то полезное
Дано что-то
Когда я делаю ещё что-то
То получается ещё более что-то
"""
When I run feature suite
Then the following steps should be undefined:
"""
получается ещё более что-то
что-то
я делаю ещё что-то
"""
And the undefined step snippets should be:
"""
func получаетсяЕщёБолееЧтото() error {
return godog.ErrPending
}
func чтото() error {
return godog.ErrPending
}
func яДелаюЕщёЧтото() error {
return godog.ErrPending
}
func InitializeScenario(ctx *godog.ScenarioContext) {
ctx.Step(`^получается ещё более что-то$`, получаетсяЕщёБолееЧтото)
ctx.Step(`^что-то$`, чтото)
ctx.Step(`^я делаю ещё что-то$`, яДелаюЕщёЧтото)
}
"""

Просмотреть файл

@ -228,7 +228,8 @@ func (f *Base) Snippets() string {
case i != 0:
w = strings.Title(w)
case len(w) > 0:
w = string(unicode.ToLower(rune(w[0]))) + w[1:]
r := []rune(w)
w = string(unicode.ToLower(r[0])) + string(r[1:])
}
words = append(words, w)
}

Просмотреть файл

@ -13,7 +13,7 @@ import (
// some snippet formatting regexps
var snippetExprCleanup = regexp.MustCompile("([\\/\\[\\]\\(\\)\\\\^\\$\\.\\|\\?\\*\\+\\'])")
var snippetExprQuoted = regexp.MustCompile("(\\W|^)\"(?:[^\"]*)\"(\\W|$)")
var snippetMethodName = regexp.MustCompile("[^a-zA-Z\\_\\ ]")
var snippetMethodName = regexp.MustCompile("[^a-zA-Zа-яА-ЯёЁ\\_\\ ]")
var snippetNumbers = regexp.MustCompile("(\\d+)")
var snippetHelperFuncs = template.FuncMap{