| 48 | |
| 49 | TEST(EnvYamlTest, ParseContainerConfig) { |
| 50 | ASSERT_OK_AND_ASSIGN(Config config, EnvConfigFromYaml(R"yaml( |
| 51 | container: "test.container" |
| 52 | )yaml")); |
| 53 | |
| 54 | EXPECT_THAT(config.GetContainerConfig(), |
| 55 | Field(&Config::ContainerConfig::name, "test.container")); |
| 56 | } |
| 57 | |
| 58 | TEST(EnvYamlTest, ParseExtensionConfigs) { |
| 59 | ASSERT_OK_AND_ASSIGN(Config config, EnvConfigFromYaml(R"yaml( |
| 60 | extensions: |
| 61 | - name: "math" |
| 62 | version: latest |
| 63 | - name: "optional" |
| 64 | version: 2 |
| 65 | - name: "strings" |
| 66 | )yaml")); |
| 67 | |
| 68 | EXPECT_THAT(config.GetExtensionConfigs(), |
| 69 | UnorderedElementsAre( |
| 70 | AllOf(Field(&Config::ExtensionConfig::name, "math"), |
| 71 | Field(&Config::ExtensionConfig::version, |
| 72 | Config::ExtensionConfig::kLatest)), |
| 73 | AllOf(Field(&Config::ExtensionConfig::name, "optional"), |
| 74 | Field(&Config::ExtensionConfig::version, 2)), |
| 75 | AllOf(Field(&Config::ExtensionConfig::name, "strings"), |
| 76 | Field(&Config::ExtensionConfig::version, |
| 77 | Config::ExtensionConfig::kLatest)))); |
| 78 | } |
| 79 | |
| 80 | TEST(EnvYamlTest, DefaultExtensionConfigs) { |
| 81 | ASSERT_OK_AND_ASSIGN(Config config, EnvConfigFromYaml(R"yaml( |
| 82 | )yaml")); |
| 83 | |
| 84 | EXPECT_THAT(config.GetExtensionConfigs(), IsEmpty()); |
| 85 | } |
| 86 | |
| 87 | TEST(EnvYamlTest, ParseStdlibConfig_ExclusionStyle) { |
| 88 | ASSERT_OK_AND_ASSIGN(Config config, EnvConfigFromYaml(R"yaml( |
| 89 | stdlib: |
| 90 | disable: true |
| 91 | disable_macros: true |
| 92 | exclude_macros: |
| 93 | - map |
| 94 | - filter |
| 95 | exclude_functions: |
| 96 | - name: "_+_" |
| 97 | overloads: |
| 98 | - id: add_bytes |
| 99 | - id: add_list |
| 100 | - name: "matches" |
| 101 | - name: "timestamp" |
| 102 | overloads: |
| 103 | - id: "string_to_timestamp" |
| 104 | )yaml")); |
| 105 | |
| 106 | const auto& stdlib_config = config.GetStandardLibraryConfig(); |
| 107 | EXPECT_TRUE(stdlib_config.disable); |
nothing calls this directly
no test coverage detected