File: base_testcase.py

package info (click to toggle)
python-azure 20250603%2Bgit-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 851,724 kB
  • sloc: python: 7,362,925; ansic: 804; javascript: 287; makefile: 195; sh: 145; xml: 109
file content (28 lines) | stat: -rw-r--r-- 1,005 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# -------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See LICENSE.txt in the project root for
# license information.
# -------------------------------------------------------------------------
import os

from devtools_testutils import AzureRecordedTestCase


ENV_MONITOR_ENVIRONMENT = "MONITOR_ENVIRONMENT"
AUDIENCE_MAP = {
    "AzureCloud": "https://monitor.azure.com",
    "AzureChinaCloud": "https://monitor.azure.cn",
    "AzureUSGovernment": "https://monitor.azure.us",
}


class LogsIngestionClientTestCase(AzureRecordedTestCase):

    def get_client(self, client_class, credential, **kwargs):

        environment = os.getenv(ENV_MONITOR_ENVIRONMENT)
        if environment:
            audience = AUDIENCE_MAP.get(environment)
            kwargs["credential_scopes"] = [f"{audience}/.default"]

        return self.create_client_from_credential(client_class, credential, **kwargs)