|
9 | 9 | import mock |
10 | 10 |
|
11 | 11 | # datadog |
12 | | -from datadog import initialize, api |
| 12 | +from datadog import initialize, api, util |
13 | 13 | from datadog.api import ( |
14 | 14 | Distribution, |
15 | 15 | Metric, |
@@ -147,57 +147,73 @@ def test_initialize_options(self): |
147 | 147 | initialize(api_key=API_KEY, mute=False) |
148 | 148 | self.assertRaises(ApiError, MyCreatable.create) |
149 | 149 |
|
150 | | - def test_initialization_from_env(self): |
151 | | - """ |
152 | | - Set API parameters in `initialize` from environment variables. |
153 | | - """ |
154 | | - @preserve_environ_datadog |
155 | | - def test_api_params_from_env(env_name, attr_name, env_value): |
156 | | - """ |
157 | | - Set env_name environment variable to env_value |
158 | | - Assert api.attr_name = env_value |
159 | | - """ |
160 | | - os.environ[env_name] = env_value |
161 | | - initialize() |
162 | | - self.assertEqual(getattr(api, attr_name), env_value) |
163 | | - |
164 | | - @preserve_environ_datadog |
165 | | - def test_api_params_default(env_name, attr_name, expected_value): |
166 | | - """ |
167 | | - Unset env_name environment variable |
168 | | - Assert api.attr_name = expected_value |
169 | | - """ |
170 | | - if os.environ.get(env_name): |
171 | | - del os.environ[env_name] |
172 | | - initialize() |
173 | | - self.assertEqual(getattr(api, attr_name), expected_value) |
174 | | - |
175 | | - @preserve_environ_datadog |
176 | | - def test_api_params_from_params(env_name, parameter, attr_name, value): |
177 | | - """ |
178 | | - Unset env_name environment variable |
179 | | - Initialize API with parameter=value |
180 | | - Assert api.attr_name = value |
181 | | - """ |
182 | | - if os.environ.get(env_name): |
183 | | - del os.environ[env_name] |
184 | | - initialize(api_host='http://localhost') |
185 | | - self.assertEqual(api._api_host, 'http://localhost') |
186 | | - |
187 | | - # Default values |
188 | | - test_api_params_default("DATADOG_API_KEY", "_api_key", None) |
189 | | - test_api_params_default("DATADOG_APP_KEY", "_application_key", None) |
190 | | - test_api_params_default("DATADOG_HOST", "_api_host", "https://api.datadoghq.com") |
191 | | - |
192 | | - # From environment |
193 | | - test_api_params_from_env("DATADOG_API_KEY", "_api_key", env_value="apikey") |
194 | | - test_api_params_from_env("DATADOG_APP_KEY", "_application_key", env_value="appkey") |
195 | | - test_api_params_from_env("DATADOG_HOST", "_api_host", env_value="http://localhost") |
196 | | - |
197 | | - # From parameters |
198 | | - test_api_params_from_params("DATADOG_API_KEY", "api_key", "_api_key", "apikey2") |
199 | | - test_api_params_from_params("DATADOG_APP_KEY", "app_key", "_application_key", "appkey2") |
200 | | - test_api_params_from_params("DATADOG_HOST", "api_host", "_api_host", "http://127.0.0.1") |
| 150 | + def test_default_values(self): |
| 151 | + initialize() |
| 152 | + |
| 153 | + self.assertIsNone(api._api_key) |
| 154 | + self.assertIsNone(api._application_key) |
| 155 | + self.assertEqual(api._api_host, "https://api.datadoghq.com") |
| 156 | + self.assertEqual(api._host_name, util.hostname.get_hostname()) |
| 157 | + |
| 158 | + def test_env_var_values(self): |
| 159 | + os.environ["DATADOG_API_KEY"] = "API_KEY_ENV" |
| 160 | + os.environ["DATADOG_APP_KEY"] = "APP_KEY_ENV" |
| 161 | + os.environ["DATADOG_HOST"] = "HOST_ENV" |
| 162 | + |
| 163 | + initialize() |
| 164 | + |
| 165 | + self.assertEqual(api._api_key, "API_KEY_ENV") |
| 166 | + self.assertEqual(api._application_key, "APP_KEY_ENV") |
| 167 | + self.assertEqual(api._api_host, "HOST_ENV") |
| 168 | + self.assertEqual(api._host_name, util.hostname.get_hostname()) |
| 169 | + |
| 170 | + del os.environ["DATADOG_API_KEY"] |
| 171 | + del os.environ["DATADOG_APP_KEY"] |
| 172 | + del os.environ["DATADOG_HOST"] |
| 173 | + |
| 174 | + def test_function_param_value(self): |
| 175 | + initialize(api_key="API_KEY", app_key="APP_KEY", api_host="HOST", host_name="HOSTNAME") |
| 176 | + |
| 177 | + self.assertEqual(api._api_key, "API_KEY") |
| 178 | + self.assertEqual(api._application_key, "APP_KEY") |
| 179 | + self.assertEqual(api._api_host, "HOST") |
| 180 | + self.assertEqual(api._host_name, "HOSTNAME") |
| 181 | + |
| 182 | + def test_additional_call(self): |
| 183 | + initialize(api_key="API_KEY", app_key="APP_KEY", api_host="HOST", host_name="HOSTNAME") |
| 184 | + |
| 185 | + self.assertEqual(api._api_key, "API_KEY") |
| 186 | + self.assertEqual(api._application_key, "APP_KEY") |
| 187 | + self.assertEqual(api._api_host, "HOST") |
| 188 | + self.assertEqual(api._host_name, "HOSTNAME") |
| 189 | + |
| 190 | + initialize(api_key="API_KEY2") |
| 191 | + |
| 192 | + self.assertEqual(api._api_key, "API_KEY2") |
| 193 | + self.assertEqual(api._application_key, "APP_KEY") |
| 194 | + self.assertEqual(api._api_host, "HOST") |
| 195 | + self.assertEqual(api._host_name, "HOSTNAME") |
| 196 | + |
| 197 | + initialize(app_key="APP_KEY2") |
| 198 | + |
| 199 | + self.assertEqual(api._api_key, "API_KEY2") |
| 200 | + self.assertEqual(api._application_key, "APP_KEY2") |
| 201 | + self.assertEqual(api._api_host, "HOST") |
| 202 | + self.assertEqual(api._host_name, "HOSTNAME") |
| 203 | + |
| 204 | + initialize(api_host="HOST2") |
| 205 | + |
| 206 | + self.assertEqual(api._api_key, "API_KEY2") |
| 207 | + self.assertEqual(api._application_key, "APP_KEY2") |
| 208 | + self.assertEqual(api._api_host, "HOST2") |
| 209 | + self.assertEqual(api._host_name, "HOSTNAME") |
| 210 | + |
| 211 | + initialize(host_name="HOSTNAME2") |
| 212 | + |
| 213 | + self.assertEqual(api._api_key, "API_KEY2") |
| 214 | + self.assertEqual(api._application_key, "APP_KEY2") |
| 215 | + self.assertEqual(api._api_host, "HOST2") |
| 216 | + self.assertEqual(api._host_name, "HOSTNAME2") |
201 | 217 |
|
202 | 218 |
|
203 | 219 | class TestResources(DatadogAPIWithInitialization): |
|
0 commit comments