Skip to content

Commit 2565a94

Browse files
authored
[EG] Update tests (#35752)
* test * typo * update recordings * mark live * kwarg fix * updates * revert * kwargs * continue skip
1 parent 3a7af26 commit 2565a94

File tree

9 files changed

+57
-79
lines changed

9 files changed

+57
-79
lines changed

sdk/eventgrid/azure-eventgrid/assets.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
"AssetsRepo": "Azure/azure-sdk-assets",
33
"AssetsRepoPrefixPath": "python",
44
"TagPrefix": "python/eventgrid/azure-eventgrid",
5-
"Tag": "python/eventgrid/azure-eventgrid_d176c3a3b4"
5+
"Tag": "python/eventgrid/azure-eventgrid_3ae14bceff"
66
}

sdk/eventgrid/azure-eventgrid/tests/conftest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,5 @@ def add_aeg_sanitizer(test_proxy):
4444
add_remove_header_sanitizer(headers="aeg-sas-key, aeg-sas-token")
4545
add_general_regex_sanitizer(
4646
value="fakeresource",
47-
regex="(?<=\\/\\/)[a-z-]+(?=\\.westus2-1\\.eventgrid\\.azure\\.net/api/events)"
47+
regex="(?<=\\/\\/)[a-z-]+(?=\\.eastus-1\\.eventgrid\\.azure\\.net/api/events)"
4848
)
Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
import functools
2-
from devtools_testutils import PowerShellPreparer
2+
from devtools_testutils import EnvironmentVariableLoader
33

44
from azure.mgmt.eventgrid.models import Topic, InputSchema, JsonInputSchemaMapping, JsonField, JsonFieldWithDefault
55

6-
from devtools_testutils.resource_testcase import RESOURCE_GROUP_PARAM
7-
86
EVENTGRID_TOPIC_PARAM = 'eventgrid_topic'
97
EVENTGRID_TOPIC_LOCATION = 'westus'
108
CLOUD_EVENT_SCHEMA = InputSchema.cloud_event_schema_v1_0
@@ -18,15 +16,18 @@
1816
CUSTOM_JSON_INPUT_SCHEMA_MAPPING = JsonInputSchemaMapping(id=ID_JSON_FIELD, topic=TOPIC_JSON_FIELD, event_time=EVENT_TIME_JSON_FIELD, event_type=EVENT_TYPE_JSON_FIELD_WITH_DEFAULT, subject=SUBJECT_JSON_FIELD_WITH_DEFAULT, data_version=DATA_VERSION_JSON_FIELD_WITH_DEFAULT)
1917

2018
EventGridPreparer = functools.partial(
21-
PowerShellPreparer, "eventgrid",
22-
eventgrid_topic_endpoint="https://fakeresource.westus2-1.eventgrid.azure.net/api/events",
19+
EnvironmentVariableLoader, "eventgrid",
20+
eventgrid_topic_endpoint="https://fakeresource.eastus-1.eventgrid.azure.net/api/events",
2321
eventgrid_topic_key="fakekeyfakekeyfakekeyfakekeyfakekeyfakekeyA=",
24-
eventgrid_domain_endpoint="https://fakeresource.westus2-1.eventgrid.azure.net/api/events",
22+
eventgrid_domain_endpoint="https://fakeresource.eastus-1.eventgrid.azure.net/api/events",
2523
eventgrid_domain_key="fakekeyfakekeyfakekeyfakekeyfakekeyfakekeyA=",
26-
eventgrid_cloud_event_topic_endpoint="https://fakeresource.westus2-1.eventgrid.azure.net/api/events",
24+
eventgrid_cloud_event_topic_endpoint="https://fakeresource.eastus-1.eventgrid.azure.net/api/events",
2725
eventgrid_cloud_event_topic_key="fakekeyfakekeyfakekeyfakekeyfakekeyfakekeyA=",
28-
eventgrid_cloud_event_domain_endpoint="https://fakeresource.westus2-1.eventgrid.azure.net/api/events",
26+
eventgrid_cloud_event_domain_endpoint="https://fakeresource.eastus-1.eventgrid.azure.net/api/events",
2927
eventgrid_cloud_event_domain_key="fakekeyfakekeyfakekeyfakekeyfakekeyfakekeyA=",
30-
eventgrid_custom_event_topic_endpoint="https://fakeresource.westus2-1.eventgrid.azure.net/api/events",
28+
eventgrid_custom_event_topic_endpoint="https://fakeresource.eastus-1.eventgrid.azure.net/api/events",
3129
eventgrid_custom_event_topic_key="fakekeyfakekeyfakekeyfakekeyfakekeyfakekeyA=",
30+
eventgrid_partner_namespace_topic_endpoint="https://fakeresource.eastus-1.eventgrid.azure.net/api/events",
31+
eventgrid_partner_namespace_topic_key="fakekeyfakekeyfakekeyfakekeyfakekeyfakekeyA=",
32+
eventgrid_partner_channel_name="fake_channel_name"
3233
)

sdk/eventgrid/azure-eventgrid/tests/test_cncf_events.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
import json
33
from devtools_testutils import AzureRecordedTestCase, recorded_by_proxy
44

5-
from azure.core.credentials import AzureKeyCredential, AzureSasCredential
65
from azure.eventgrid import EventGridPublisherClient
76
from cloudevents.http import CloudEvent
87

sdk/eventgrid/azure-eventgrid/tests/test_cncf_events_async.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11

22
import json
33
import pytest
4-
from devtools_testutils import AzureRecordedTestCase, CachedResourceGroupPreparer
4+
from devtools_testutils import AzureRecordedTestCase
55
from devtools_testutils.aio import recorded_by_proxy_async
66

7-
from azure.core.credentials import AzureKeyCredential, AzureSasCredential
87
from azure.eventgrid.aio import EventGridPublisherClient
98
from cloudevents.http import CloudEvent
109

sdk/eventgrid/azure-eventgrid/tests/test_eg_publisher_client.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
from devtools_testutils import AzureRecordedTestCase, recorded_by_proxy
2323

24-
from azure.core.credentials import AzureKeyCredential, AzureSasCredential
24+
from azure.core.credentials import AzureSasCredential
2525
from azure.core.messaging import CloudEvent
2626
from azure.core.serialization import NULL
2727
from azure.eventgrid import EventGridPublisherClient, EventGridEvent, generate_sas
@@ -51,10 +51,10 @@ def test_send_event_grid_event_data_dict(self, eventgrid_topic_endpoint):
5151

5252
@EventGridPreparer()
5353
@recorded_by_proxy
54-
def test_send_event_grid_event_fails_without_full_url(self, eventgrid_topic_key, eventgrid_topic_endpoint):
55-
akc_credential = AzureKeyCredential(eventgrid_topic_key)
54+
def test_send_event_grid_event_fails_without_full_url(self,eventgrid_topic_endpoint):
55+
credential = self.get_credential(EventGridPublisherClient)
5656
parsed_url = urlparse(eventgrid_topic_endpoint)
57-
client = EventGridPublisherClient(parsed_url.netloc, akc_credential)
57+
client = EventGridPublisherClient(parsed_url.netloc, credential)
5858
eg_event = EventGridEvent(
5959
subject="sample",
6060
data={"sample": "eventgridevent"},
@@ -269,9 +269,11 @@ def test_send_cloud_event_dict(self, eventgrid_cloud_event_topic_endpoint):
269269
}
270270
client.send(cloud_event1)
271271

272+
@pytest.mark.live_test_only
272273
@EventGridPreparer()
273-
@recorded_by_proxy
274-
def test_send_signature_credential(self, eventgrid_topic_key, eventgrid_topic_endpoint):
274+
def test_send_signature_credential(self, **kwargs):
275+
eventgrid_topic_endpoint = kwargs.pop("eventgrid_topic_endpoint")
276+
eventgrid_topic_key = kwargs.pop("eventgrid_topic_key")
275277
expiration_date_utc = dt.datetime.now(UTC()) + timedelta(hours=1)
276278
signature = generate_sas(eventgrid_topic_endpoint, eventgrid_topic_key, expiration_date_utc)
277279
credential = AzureSasCredential(signature)
@@ -346,12 +348,10 @@ def test_send_token_credential(self, eventgrid_topic_endpoint):
346348
client.send(eg_event)
347349

348350
@pytest.mark.live_test_only
349-
def test_send_partner_namespace(self):
350-
eventgrid_partner_namespace_endpoint = os.environ['EVENTGRID_PARTNER_NAMESPACE_TOPIC_ENDPOINT']
351-
eventgrid_partner_namespace_key = os.environ['EVENTGRID_PARTNER_NAMESPACE_TOPIC_KEY']
352-
channel_name = os.environ['EVENTGRID_PARTNER_CHANNEL_NAME']
353-
credential = AzureKeyCredential(eventgrid_partner_namespace_key)
354-
client = EventGridPublisherClient(eventgrid_partner_namespace_endpoint, credential)
351+
@EventGridPreparer()
352+
@recorded_by_proxy
353+
def test_send_partner_namespace(self, eventgrid_partner_namespace_topic_endpoint, eventgrid_partner_channel_name):
354+
client = self.create_eg_publisher_client(eventgrid_partner_namespace_topic_endpoint)
355355
cloud_event = CloudEvent(
356356
source = "http://samplesource.dev",
357357
data = "cloudevent",
@@ -360,6 +360,6 @@ def test_send_partner_namespace(self):
360360

361361
def callback(request):
362362
req = request.http_request.headers
363-
assert req.get("aeg-channel-name") == channel_name
363+
assert req.get("aeg-channel-name") == eventgrid_partner_channel_name
364364

365-
client.send(cloud_event, channel_name=channel_name, raw_request_hook=callback)
365+
client.send(cloud_event, channel_name=eventgrid_partner_channel_name, raw_request_hook=callback)

sdk/eventgrid/azure-eventgrid/tests/test_eg_publisher_client_async.py

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
from devtools_testutils import AzureRecordedTestCase
1919
from devtools_testutils.aio import recorded_by_proxy_async
2020

21-
from azure.core.credentials import AzureKeyCredential, AzureSasCredential
21+
from azure.core.credentials import AzureSasCredential
2222
from azure.core.messaging import CloudEvent
2323
from azure.core.serialization import NULL
2424
from azure.eventgrid import EventGridEvent, generate_sas
@@ -72,10 +72,10 @@ async def test_send_event_grid_event_data_as_list(self, eventgrid_topic_endpoint
7272
@EventGridPreparer()
7373
@recorded_by_proxy_async
7474
@pytest.mark.asyncio
75-
async def test_send_event_grid_event_fails_without_full_url(self, eventgrid_topic_key, eventgrid_topic_endpoint):
76-
akc_credential = AzureKeyCredential(eventgrid_topic_key)
75+
async def test_send_event_grid_event_fails_without_full_url(self, eventgrid_topic_endpoint):
76+
credential = self.get_credential(EventGridPublisherClient, is_async=True)
7777
parsed_url = urlparse(eventgrid_topic_endpoint)
78-
client = EventGridPublisherClient(parsed_url.netloc, akc_credential)
78+
client = EventGridPublisherClient(parsed_url.netloc, credential)
7979
eg_event = EventGridEvent(
8080
subject="sample",
8181
data={"sample": "eventgridevent"},
@@ -242,10 +242,12 @@ def callback(request):
242242

243243
await client.send(cloud_event, raw_request_hook=callback)
244244

245+
@pytest.mark.live_test_only
245246
@EventGridPreparer()
246-
@recorded_by_proxy_async
247247
@pytest.mark.asyncio
248-
async def test_send_signature_credential(self, eventgrid_topic_key, eventgrid_topic_endpoint):
248+
async def test_send_signature_credential(self, **kwargs):
249+
eventgrid_topic_endpoint = kwargs.pop("eventgrid_topic_endpoint")
250+
eventgrid_topic_key = kwargs.pop("eventgrid_topic_key")
249251
expiration_date_utc = dt.datetime.now(UTC()) + timedelta(hours=1)
250252
signature = generate_sas(eventgrid_topic_endpoint, eventgrid_topic_key, expiration_date_utc)
251253
credential = AzureSasCredential(signature)
@@ -334,19 +336,18 @@ async def test_send_token_credential(self, eventgrid_topic_endpoint):
334336
await client.send(eg_event)
335337

336338
@pytest.mark.live_test_only
337-
async def test_send_partner_namespace(self):
338-
eventgrid_partner_namespace_endpoint = os.environ['EVENTGRID_PARTNER_NAMESPACE_TOPIC_ENDPOINT']
339-
eventgrid_partner_namespace_key = os.environ['EVENTGRID_PARTNER_NAMESPACE_TOPIC_KEY']
340-
channel_name = os.environ['EVENTGRID_PARTNER_CHANNEL_NAME']
341-
credential = AzureKeyCredential(eventgrid_partner_namespace_key)
342-
client = EventGridPublisherClient(eventgrid_partner_namespace_endpoint, credential)
339+
@EventGridPreparer()
340+
@recorded_by_proxy_async
341+
@pytest.mark.asyncio
342+
async def test_send_partner_namespace(self, eventgrid_partner_namespace_topic_endpoint, eventgrid_partner_channel_name):
343+
client = self.create_eg_publisher_client(eventgrid_partner_namespace_topic_endpoint)
343344
cloud_event = CloudEvent(
344345
source = "http://samplesource.dev",
345346
data = "cloudevent",
346347
type="Sample.Cloud.Event"
347348
)
348349
def callback(request):
349350
req = request.http_request.headers
350-
assert req.get("aeg-channel-name") == channel_name
351+
assert req.get("aeg-channel-name") == eventgrid_partner_channel_name
351352

352-
await client.send(cloud_event, channel_name=channel_name, raw_request_hook=callback)
353+
await client.send(cloud_event, channel_name=eventgrid_partner_channel_name, raw_request_hook=callback)

sdk/eventgrid/azure-eventgrid/tests/test_exceptions.py

Lines changed: 7 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,33 +4,18 @@
44
# license information.
55
#--------------------------------------------------------------------------
66

7-
import logging
8-
import sys
97
import os
108
import json
119
import pytest
12-
import uuid
13-
from datetime import datetime, timedelta
1410
from azure.core.exceptions import (
1511
HttpResponseError,
1612
ClientAuthenticationError,
17-
ServiceRequestError
1813
)
19-
from msrest.serialization import UTC
20-
import datetime as dt
21-
22-
try:
23-
from urllib.parse import urlparse
24-
except ImportError:
25-
from urlparse import urlparse
2614

2715
from devtools_testutils import AzureMgmtRecordedTestCase, recorded_by_proxy
2816

29-
from azure.core.credentials import AzureKeyCredential, AzureSasCredential
30-
from azure.core.messaging import CloudEvent
31-
from azure.core.serialization import NULL
32-
from azure.eventgrid import EventGridPublisherClient, EventGridEvent, generate_sas
33-
from azure.eventgrid._helpers import _cloud_event_to_generated
17+
from azure.core.credentials import AzureKeyCredential
18+
from azure.eventgrid import EventGridPublisherClient, EventGridEvent
3419

3520
from eventgrid_preparer import (
3621
EventGridPreparer,
@@ -42,9 +27,10 @@ def create_eg_publisher_client(self, endpoint):
4227
client = self.create_client_from_credential(EventGridPublisherClient, credential=credential, endpoint=endpoint)
4328
return client
4429

30+
@pytest.mark.live_test_only
4531
@EventGridPreparer()
46-
@recorded_by_proxy
47-
def test_raise_on_auth_error(self, eventgrid_topic_endpoint):
32+
def test_raise_on_auth_error(self, **kwargs):
33+
eventgrid_topic_endpoint = kwargs.pop("eventgrid_topic_endpoint")
4834
akc_credential = AzureKeyCredential("bad credential")
4935
client = EventGridPublisherClient(eventgrid_topic_endpoint, akc_credential)
5036
eg_event = EventGridEvent(
@@ -59,7 +45,8 @@ def test_raise_on_auth_error(self, eventgrid_topic_endpoint):
5945
@pytest.mark.skip("Fix during MQ - skip to unblock pipeline")
6046
@pytest.mark.live_test_only
6147
@EventGridPreparer()
62-
def test_raise_on_bad_resource(self, eventgrid_topic_key):
48+
def test_raise_on_bad_resource(self, **kwargs):
49+
eventgrid_topic_key = kwargs.pop("eventgrid_topic_key")
6350
akc_credential = AzureKeyCredential(eventgrid_topic_key)
6451
client = EventGridPublisherClient("https://bad-resource.westus-1.eventgrid.azure.net/api/events", akc_credential)
6552
eg_event = EventGridEvent(

sdk/eventgrid/azure-eventgrid/tests/test_exceptions_async.py

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,31 +4,20 @@
44
# license information.
55
#--------------------------------------------------------------------------
66

7-
import logging
8-
import sys
97
import os
108
import json
119
import pytest
12-
import uuid
13-
from datetime import datetime, timedelta
14-
from azure.core.exceptions import HttpResponseError, ClientAuthenticationError, ServiceRequestError
10+
from azure.core.exceptions import HttpResponseError, ClientAuthenticationError
1511
from msrest.serialization import UTC
1612
import datetime as dt
1713

18-
try:
19-
from urllib.parse import urlparse
20-
except ImportError:
21-
from urlparse import urlparse
2214

2315
from devtools_testutils import AzureRecordedTestCase
2416
from devtools_testutils.aio import recorded_by_proxy_async
2517

26-
from azure.core.credentials import AzureKeyCredential, AzureSasCredential
27-
from azure.core.messaging import CloudEvent
28-
from azure.core.serialization import NULL
29-
from azure.eventgrid import EventGridEvent, generate_sas
18+
from azure.core.credentials import AzureKeyCredential
19+
from azure.eventgrid import EventGridEvent
3020
from azure.eventgrid.aio import EventGridPublisherClient
31-
from azure.eventgrid._helpers import _cloud_event_to_generated
3221

3322
from eventgrid_preparer import (
3423
EventGridPreparer,
@@ -40,10 +29,11 @@ def create_eg_publisher_client(self, endpoint):
4029
client = self.create_client_from_credential(EventGridPublisherClient, credential=credential, endpoint=endpoint)
4130
return client
4231

32+
@pytest.mark.live_test_only
4333
@EventGridPreparer()
44-
@recorded_by_proxy_async
4534
@pytest.mark.asyncio
46-
async def test_raise_on_auth_error(self, eventgrid_topic_endpoint):
35+
async def test_raise_on_auth_error(self, **kwargs):
36+
eventgrid_topic_endpoint = kwargs.pop("eventgrid_topic_endpoint")
4737
akc_credential = AzureKeyCredential("bad credential")
4838
client = EventGridPublisherClient(eventgrid_topic_endpoint, akc_credential)
4939
eg_event = EventGridEvent(
@@ -59,7 +49,8 @@ async def test_raise_on_auth_error(self, eventgrid_topic_endpoint):
5949
@pytest.mark.live_test_only
6050
@EventGridPreparer()
6151
@pytest.mark.asyncio
62-
async def test_raise_on_bad_resource(self, eventgrid_topic_key):
52+
async def test_raise_on_bad_resource(self, **kwargs):
53+
eventgrid_topic_key = kwargs.pop("eventgrid_topic_key")
6354
akc_credential = AzureKeyCredential(eventgrid_topic_key)
6455
client = EventGridPublisherClient("https://bad-resource.westus-1.eventgrid.azure.net/api/events", akc_credential)
6556
eg_event = EventGridEvent(

0 commit comments

Comments
 (0)