6#include <userver/formats/parse/to.hpp>
7#include <userver/utils/assert.hpp>
11namespace server::handlers::auth {
15namespace server::auth {
18enum class UserEnv :
int {
27UserEnv Parse(
const Value& v, formats::parse::To<UserEnv>) {
28 const std::string env_name = v.
template As<std::string>();
29 if (env_name ==
"Prod" || env_name ==
"Mimino") {
30 return UserEnv::kProd;
31 }
else if (env_name ==
"Test") {
32 return UserEnv::kTest;
33 }
else if (env_name ==
"ProdYateam") {
34 return UserEnv::kProdYateam;
35 }
else if (env_name ==
"TestYateam") {
36 return UserEnv::kTestYateam;
37 }
else if (env_name ==
"Stress") {
38 return UserEnv::kStress;
41 UASSERT_MSG(
false,
"Unknown user env");
42 throw std::runtime_error(
"Unknown user env " + env_name);
45std::string ToString(UserEnv env);