thousandeyes-sdk-python/thousandeyes-sdk-snapshots/test/test_test_snapshots_api_integration.py
Kevin b1faff026e Regenerate integration tests with fixed JSON escaping and enum params.
Success response bodies now use valid JSON quotes instead of HTML entities,
and optional expand enum params are omitted when OpenAPI examples are invalid.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 12:13:24 +01:00

428 lines
14 KiB
Python

# coding: utf-8
"""
Test Snapshots API
Creates a new test snapshot in ThousandEyes.
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
""" # noqa: E501
import json
import unittest
import thousandeyes_sdk.snapshots.models
from thousandeyes_sdk.core.exceptions import ApiException
from thousandeyes_sdk.snapshots.api.test_snapshots_api import TestSnapshotsApi
from .integration_test_utils import IntegrationTestBase
from .test_utils import assert_constructed_model_matches_example_json
class TestTestSnapshotsApiIntegration(IntegrationTestBase):
"""TestSnapshotsApi integration test stubs"""
def setUp(self) -> None:
super().setUp()
self.api = TestSnapshotsApi(self.api_client)
def test_create_test_snapshot_happy_path(self) -> None:
"""Integration test for create_test_snapshot success path"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
response_body_json = """
{
"shareDate" : "2023-06-06T00:00:00Z",
"uid" : "281474976810911",
"test" : {
"_links" : {
"testResults" : [ {
"href" : "https://api.thousandeyes.com/v7/test-results/281474976710706/network"
}, {
"href" : "https://api.thousandeyes.com/v7/test-results/281474976710706/path-vis"
} ],
"self" : {
"hreflang" : "hreflang",
"templated" : true,
"profile" : "profile",
"name" : "name",
"href" : "https://api.thousandeyes.com/v7/link/to/resource/id",
"type" : "type",
"deprecation" : "deprecation",
"title" : "title"
}
},
"liveShare" : false,
"savedEvent" : true,
"description" : "ThousandEyes Test",
"type" : "agent-to-server",
"enabled" : true,
"createdDate" : "2022-07-17T22:00:54Z",
"createdBy" : "user@user.com",
"modifiedDate" : "2022-07-17T22:00:54Z",
"interval" : 60,
"modifiedBy" : "user@user.com",
"testId" : "281474976710706",
"alertsEnabled" : true,
"testName" : "ThousandEyes Test"
},
"_links" : {
"appLink" : {
"hreflang" : "hreflang",
"templated" : true,
"profile" : "profile",
"name" : "name",
"href" : "https://api.thousandeyes.com/v7/link/to/resource/id",
"type" : "type",
"deprecation" : "deprecation",
"title" : "title"
},
"self" : {
"hreflang" : "hreflang",
"templated" : true,
"profile" : "profile",
"name" : "name",
"href" : "https://api.thousandeyes.com/v7/link/to/resource/id",
"type" : "type",
"deprecation" : "deprecation",
"title" : "title"
}
},
"startRoundId" : 1538784000,
"displayName" : "Snapshot created through API",
"endRoundId" : 1538787600,
"testId" : "281474976710801",
"extraParams" : "params",
"id" : "wdiac",
"roundId" : 1538784000,
"sourceTestId" : "281474976710706"
}
"""
expected_response = json.loads(response_body_json)
response = self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot"),
)
assert_constructed_model_matches_example_json(response, expected_response)
def test_create_test_snapshot_error_400(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 400)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"instance" : "instance",
"detail" : "detail",
"type" : "type",
"title" : "title",
"errors" : [ {
"code" : "code",
"field" : "field",
"message" : "message"
}, {
"code" : "code",
"field" : "field",
"message" : "message"
} ],
"status" : 0
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(400)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="400"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
def test_create_test_snapshot_error_401(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 401)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"error_description" : "Invalid access token",
"error" : "invalid_token"
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(401)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="401"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
def test_create_test_snapshot_error_403(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 403)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"instance" : "instance",
"detail" : "detail",
"type" : "type",
"title" : "title",
"status" : 6
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(403)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="403"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
def test_create_test_snapshot_error_404(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 404)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"instance" : "instance",
"detail" : "detail",
"type" : "type",
"title" : "title",
"status" : 6
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(404)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="404"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
def test_create_test_snapshot_error_429(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 429)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"instance" : "instance",
"detail" : "detail",
"type" : "type",
"title" : "title",
"status" : 6
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(429)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="429"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
def test_create_test_snapshot_error_500(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 500)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"instance" : "instance",
"detail" : "detail",
"type" : "type",
"title" : "title",
"status" : 6
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(500)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="500"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
def test_create_test_snapshot_error_502(self) -> None:
"""Integration test for create_test_snapshot error path (HTTP 502)"""
request_body_json = """
{
"endDate" : "2023-06-06T01:00:00Z",
"displayName" : "Snapshot created through API",
"isPublic" : false,
"startDate" : "2023-06-06T00:00:00Z"
}
"""
snapshot_request = thousandeyes_sdk.snapshots.models.SnapshotRequest.from_json(request_body_json)
test_id = '202701'
aid = '1234'
error_body_json = """
{
"instance" : "instance",
"detail" : "detail",
"type" : "type",
"title" : "title",
"status" : 6
}
"""
expected_error = json.loads(error_body_json)
with self.assertRaises(
ApiException.exception_class_for_http_status(502)
) as context:
self.api.create_test_snapshot(
test_id=test_id,
snapshot_request=snapshot_request,
aid=aid,
_headers=self.te_headers("create_test_snapshot", error_status="502"),
)
assert_constructed_model_matches_example_json(context.exception.data, expected_error)
if __name__ == '__main__':
unittest.main()