Size: a a a

2021 June 16

с

сонная википедия... in Go-go!
Так будет же, тайп листы/сеты
источник

RS

Roman Sharkov in Go-go!
что будет то будет) а имеем пока то что имеем)
извиняюсь за тавтологию
источник

AK

Alexey Konovalenko in Go-go!
Сталкивались ли вы с необходимостью тестировать код, зависящий от переменных окружения (напрямую)?

Например: вы написали пакет для парсинга конфигов из переменных окружения и хотите его проверить или что-то подобное.
Анонимный опрос
35%
Да, покрыл код тестами
19%
Да, но отказался от тестирования
46%
Нет
Проголосовало: 37
источник

ЕА

Егор Андреевич... in Go-go!
А где вариант что вопрос вообще не связан с примером?
источник

AK

Alexey Konovalenko in Go-go!
Раскрой пожалуйста мысль шире
источник

ЕА

Егор Андреевич... in Go-go!
Вопрос про функциональное тестирование, а пример про просто тестирование парсинга
источник

AK

Alexey Konovalenko in Go-go!
Вопрос о том, приходилось ли тестировать код, логика работы которого зависит от переменных окружение.

Это может быть что угодно, как пример, это пакет который непосредственно извлекает значения из переменных окружения, следовательно тестирование работы этого пакета, это тестирование пакета зависящего от переменных окружения
источник

AK

Alexey Konovalenko in Go-go!
В данном случае меня волнует вопрос мока (стаба), значений переменных окружения, при таком тестировании.

Если для целей тестирования, мы изменим значение переменной окружения, то нам нужно вернуть его в исходное состояние (это будет правильно)

Вопрос? Как вы решали эту проблему?
Я не нашёл ничего подходящего и в итоге написал для этих целей пакет, чтобы сделал эту крошечную операцию чуть проще и надёжнее.

Как поступили вы? И может быть мой подход к решению этой проблемы был концептуально ошибочным, поделитесь опытом
источник

AK

Alexey Konovalenko in Go-go!
Если возникнет вопрос, "А в чём же проблема?", то проблема в том, что когда нужно задать тестовое значение сразу группе переменных, то очень муторно их все возвращать в исходное состояние. А так же проверять, каким именно было это состояние (переменная задана или нет, вернуть значение или сделать unset)
источник

L

LiFeAiR in Go-go!
Зря гоните на mssql
Мы его постоянно запускаем в тестах в докере: microsoft/mssql-server-linux:2017-latest
Полёт нормальный)
источник

DL

D. L. in Go-go!
Привет. А именованный возврат как-то влияет на производительность? И если да, то как
источник

с

сонная википедия... in Go-go!
в общем-то, никак
источник

с

сонная википедия... in Go-go!
он ничем от обычного не отличается, с точки зрения генерируемого кода
источник

RT

Rostislav Teryaev in Go-go!
А почему вопрос? Если бы был чуточку медленее, то что?
источник

RL

Ragnar Lodbrok in Go-go!
Не совсем так.
В какой-то статье видел, что генерируемый код всё-таки отличается незначительно.
Но на скорость это явно не влияет
источник

с

сонная википедия... in Go-go!
значит код с именованным возвратом тоже слегка отличался
источник

RL

Ragnar Lodbrok in Go-go!
Ну само собой, ведь в одном случае возврат был именнованный
источник

с

сонная википедия... in Go-go!
то надо писать код без именованных результатов, ведь 5 пикосекунд разницы это так важно
источник

RT

Rostislav Teryaev in Go-go!
ну к тому и был вопрос.
Не понимаю, где это может сыграть роль
источник

DL

D. L. in Go-go!
Я просто слышал когда-то от кого-то, что это лучше влияет на производительность) А так, я хочу в свою команду такой подход внедрить, чем больше аргументов за - тем лучше
источник