Skip to content

Commit 1838882

Browse files
committed
add tests for setting http logging policy in azure mgmt core
1 parent 97308b1 commit 1838882

File tree

3 files changed

+70
-1
lines changed

3 files changed

+70
-1
lines changed

sdk/core/azure-mgmt-core/tests/asynctests/__init__.py

Whitespace-only changes.
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#--------------------------------------------------------------------------
2+
# Copyright (c) Microsoft Corporation. All rights reserved.
3+
#
4+
# The MIT License (MIT)
5+
#
6+
# Permission is hereby granted, free of charge, to any person obtaining a copy
7+
# of this software and associated documentation files (the ""Software""), to deal
8+
# in the Software without restriction, including without limitation the rights
9+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
# copies of the Software, and to permit persons to whom the Software is
11+
# furnished to do so, subject to the following conditions:
12+
#
13+
# The above copyright notice and this permission notice shall be included in
14+
# all copies or substantial portions of the Software.
15+
#
16+
# THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22+
# THE SOFTWARE.
23+
#
24+
#--------------------------------------------------------------------------
25+
26+
from azure.mgmt.core import AsyncARMPipelineClient
27+
from azure.mgmt.core.policies import ARMHttpLoggingPolicy
28+
from azure.core.configuration import Configuration
29+
30+
def test_default_http_logging_policy():
31+
config = Configuration()
32+
pipeline_client = AsyncARMPipelineClient(base_url="test", config=config)
33+
http_logging_policy = pipeline_client._default_policies(config=config)[-1]
34+
assert http_logging_policy.allowed_header_names == ARMHttpLoggingPolicy.DEFAULT_HEADERS_WHITELIST
35+
36+
def test_pass_in_http_logging_policy():
37+
config = Configuration()
38+
http_logging_policy = ARMHttpLoggingPolicy()
39+
http_logging_policy.allowed_header_names.update(
40+
{"x-ms-added-header"}
41+
)
42+
config.http_logging_policy = http_logging_policy
43+
44+
pipeline_client = AsyncARMPipelineClient(base_url="test", config=config)
45+
http_logging_policy = pipeline_client._default_policies(config=config)[-1]
46+
assert http_logging_policy.allowed_header_names == ARMHttpLoggingPolicy.DEFAULT_HEADERS_WHITELIST.union({"x-ms-added-header"})

sdk/core/azure-mgmt-core/tests/test_policies.py

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,18 @@
3535
import requests
3636
import httpretty
3737

38+
from azure.core.configuration import Configuration
3839
from azure.core.pipeline import Pipeline
3940
from azure.core.pipeline.transport import (
4041
HttpRequest,
4142
RequestsTransport,
4243
)
4344

44-
from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy
45+
from azure.mgmt.core import ARMPipelineClient
46+
from azure.mgmt.core.policies import (
47+
ARMAutoResourceProviderRegistrationPolicy,
48+
ARMHttpLoggingPolicy
49+
)
4550

4651
@pytest.fixture
4752
def sleepless(monkeypatch):
@@ -162,3 +167,21 @@ def test_register_failed_policy():
162167
response = pipeline.run(request)
163168

164169
assert response.http_response.status_code == 409
170+
171+
def test_default_http_logging_policy():
172+
config = Configuration()
173+
pipeline_client = ARMPipelineClient(base_url="test", config=config)
174+
http_logging_policy = pipeline_client._default_policies(config=config)[-1]
175+
assert http_logging_policy.allowed_header_names == ARMHttpLoggingPolicy.DEFAULT_HEADERS_WHITELIST
176+
177+
def test_pass_in_http_logging_policy():
178+
config = Configuration()
179+
http_logging_policy = ARMHttpLoggingPolicy()
180+
http_logging_policy.allowed_header_names.update(
181+
{"x-ms-added-header"}
182+
)
183+
config.http_logging_policy = http_logging_policy
184+
185+
pipeline_client = ARMPipelineClient(base_url="test", config=config)
186+
http_logging_policy = pipeline_client._default_policies(config=config)[-1]
187+
assert http_logging_policy.allowed_header_names == ARMHttpLoggingPolicy.DEFAULT_HEADERS_WHITELIST.union({"x-ms-added-header"})

0 commit comments

Comments
 (0)