This commit is contained in:
Stephan 2018-12-21 12:28:56 +01:00
commit e51d1bfade
172 changed files with 49629 additions and 49629 deletions

View file

@ -1,139 +1,139 @@
from __future__ import unicode_literals
import boto3
import json
import botocore.exceptions
import sure # noqa
from moto import mock_xray
import datetime
@mock_xray
def test_put_telemetry():
client = boto3.client('xray', region_name='us-east-1')
client.put_telemetry_records(
TelemetryRecords=[
{
'Timestamp': datetime.datetime(2015, 1, 1),
'SegmentsReceivedCount': 123,
'SegmentsSentCount': 123,
'SegmentsSpilloverCount': 123,
'SegmentsRejectedCount': 123,
'BackendConnectionErrors': {
'TimeoutCount': 123,
'ConnectionRefusedCount': 123,
'HTTPCode4XXCount': 123,
'HTTPCode5XXCount': 123,
'UnknownHostCount': 123,
'OtherCount': 123
}
},
],
EC2InstanceId='string',
Hostname='string',
ResourceARN='string'
)
@mock_xray
def test_put_trace_segments():
client = boto3.client('xray', region_name='us-east-1')
client.put_trace_segments(
TraceSegmentDocuments=[
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0a',
'start_time': 1.478293361271E9,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'end_time': 1.478293361449E9
})
]
)
@mock_xray
def test_trace_summary():
client = boto3.client('xray', region_name='us-east-1')
client.put_trace_segments(
TraceSegmentDocuments=[
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0a',
'start_time': 1.478293361271E9,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'in_progress': True
}),
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0b',
'start_time': 1478293365,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'end_time': 1478293385
})
]
)
client.get_trace_summaries(
StartTime=datetime.datetime(2014, 1, 1),
EndTime=datetime.datetime(2017, 1, 1)
)
@mock_xray
def test_batch_get_trace():
client = boto3.client('xray', region_name='us-east-1')
client.put_trace_segments(
TraceSegmentDocuments=[
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0a',
'start_time': 1.478293361271E9,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'in_progress': True
}),
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0b',
'start_time': 1478293365,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'end_time': 1478293385
})
]
)
resp = client.batch_get_traces(
TraceIds=['1-581cf771-a006649127e371903a2de979', '1-581cf772-b006649127e371903a2de979']
)
len(resp['UnprocessedTraceIds']).should.equal(1)
len(resp['Traces']).should.equal(1)
# Following are not implemented, just testing it returns what boto expects
@mock_xray
def test_batch_get_service_graph():
client = boto3.client('xray', region_name='us-east-1')
client.get_service_graph(
StartTime=datetime.datetime(2014, 1, 1),
EndTime=datetime.datetime(2017, 1, 1)
)
@mock_xray
def test_batch_get_trace_graph():
client = boto3.client('xray', region_name='us-east-1')
client.batch_get_traces(
TraceIds=['1-581cf771-a006649127e371903a2de979', '1-581cf772-b006649127e371903a2de979']
)
from __future__ import unicode_literals
import boto3
import json
import botocore.exceptions
import sure # noqa
from moto import mock_xray
import datetime
@mock_xray
def test_put_telemetry():
client = boto3.client('xray', region_name='us-east-1')
client.put_telemetry_records(
TelemetryRecords=[
{
'Timestamp': datetime.datetime(2015, 1, 1),
'SegmentsReceivedCount': 123,
'SegmentsSentCount': 123,
'SegmentsSpilloverCount': 123,
'SegmentsRejectedCount': 123,
'BackendConnectionErrors': {
'TimeoutCount': 123,
'ConnectionRefusedCount': 123,
'HTTPCode4XXCount': 123,
'HTTPCode5XXCount': 123,
'UnknownHostCount': 123,
'OtherCount': 123
}
},
],
EC2InstanceId='string',
Hostname='string',
ResourceARN='string'
)
@mock_xray
def test_put_trace_segments():
client = boto3.client('xray', region_name='us-east-1')
client.put_trace_segments(
TraceSegmentDocuments=[
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0a',
'start_time': 1.478293361271E9,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'end_time': 1.478293361449E9
})
]
)
@mock_xray
def test_trace_summary():
client = boto3.client('xray', region_name='us-east-1')
client.put_trace_segments(
TraceSegmentDocuments=[
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0a',
'start_time': 1.478293361271E9,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'in_progress': True
}),
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0b',
'start_time': 1478293365,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'end_time': 1478293385
})
]
)
client.get_trace_summaries(
StartTime=datetime.datetime(2014, 1, 1),
EndTime=datetime.datetime(2017, 1, 1)
)
@mock_xray
def test_batch_get_trace():
client = boto3.client('xray', region_name='us-east-1')
client.put_trace_segments(
TraceSegmentDocuments=[
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0a',
'start_time': 1.478293361271E9,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'in_progress': True
}),
json.dumps({
'name': 'example.com',
'id': '70de5b6f19ff9a0b',
'start_time': 1478293365,
'trace_id': '1-581cf771-a006649127e371903a2de979',
'end_time': 1478293385
})
]
)
resp = client.batch_get_traces(
TraceIds=['1-581cf771-a006649127e371903a2de979', '1-581cf772-b006649127e371903a2de979']
)
len(resp['UnprocessedTraceIds']).should.equal(1)
len(resp['Traces']).should.equal(1)
# Following are not implemented, just testing it returns what boto expects
@mock_xray
def test_batch_get_service_graph():
client = boto3.client('xray', region_name='us-east-1')
client.get_service_graph(
StartTime=datetime.datetime(2014, 1, 1),
EndTime=datetime.datetime(2017, 1, 1)
)
@mock_xray
def test_batch_get_trace_graph():
client = boto3.client('xray', region_name='us-east-1')
client.batch_get_traces(
TraceIds=['1-581cf771-a006649127e371903a2de979', '1-581cf772-b006649127e371903a2de979']
)

View file

@ -1,72 +1,72 @@
from __future__ import unicode_literals
from moto import mock_xray_client, XRaySegment, mock_dynamodb2
import sure # noqa
import boto3
from moto.xray.mock_client import MockEmitter
import aws_xray_sdk.core as xray_core
import aws_xray_sdk.core.patcher as xray_core_patcher
import botocore.client
import botocore.endpoint
original_make_api_call = botocore.client.BaseClient._make_api_call
original_encode_headers = botocore.endpoint.Endpoint._encode_headers
import requests
original_session_request = requests.Session.request
original_session_prep_request = requests.Session.prepare_request
@mock_xray_client
@mock_dynamodb2
def test_xray_dynamo_request_id():
# Could be ran in any order, so we need to tell sdk that its been unpatched
xray_core_patcher._PATCHED_MODULES = set()
xray_core.patch_all()
client = boto3.client('dynamodb', region_name='us-east-1')
with XRaySegment():
resp = client.list_tables()
resp['ResponseMetadata'].should.contain('RequestId')
id1 = resp['ResponseMetadata']['RequestId']
with XRaySegment():
client.list_tables()
resp = client.list_tables()
id2 = resp['ResponseMetadata']['RequestId']
id1.should_not.equal(id2)
setattr(botocore.client.BaseClient, '_make_api_call', original_make_api_call)
setattr(botocore.endpoint.Endpoint, '_encode_headers', original_encode_headers)
setattr(requests.Session, 'request', original_session_request)
setattr(requests.Session, 'prepare_request', original_session_prep_request)
@mock_xray_client
def test_xray_udp_emitter_patched():
# Could be ran in any order, so we need to tell sdk that its been unpatched
xray_core_patcher._PATCHED_MODULES = set()
xray_core.patch_all()
assert isinstance(xray_core.xray_recorder._emitter, MockEmitter)
setattr(botocore.client.BaseClient, '_make_api_call', original_make_api_call)
setattr(botocore.endpoint.Endpoint, '_encode_headers', original_encode_headers)
setattr(requests.Session, 'request', original_session_request)
setattr(requests.Session, 'prepare_request', original_session_prep_request)
@mock_xray_client
def test_xray_context_patched():
# Could be ran in any order, so we need to tell sdk that its been unpatched
xray_core_patcher._PATCHED_MODULES = set()
xray_core.patch_all()
xray_core.xray_recorder._context.context_missing.should.equal('LOG_ERROR')
setattr(botocore.client.BaseClient, '_make_api_call', original_make_api_call)
setattr(botocore.endpoint.Endpoint, '_encode_headers', original_encode_headers)
setattr(requests.Session, 'request', original_session_request)
setattr(requests.Session, 'prepare_request', original_session_prep_request)
from __future__ import unicode_literals
from moto import mock_xray_client, XRaySegment, mock_dynamodb2
import sure # noqa
import boto3
from moto.xray.mock_client import MockEmitter
import aws_xray_sdk.core as xray_core
import aws_xray_sdk.core.patcher as xray_core_patcher
import botocore.client
import botocore.endpoint
original_make_api_call = botocore.client.BaseClient._make_api_call
original_encode_headers = botocore.endpoint.Endpoint._encode_headers
import requests
original_session_request = requests.Session.request
original_session_prep_request = requests.Session.prepare_request
@mock_xray_client
@mock_dynamodb2
def test_xray_dynamo_request_id():
# Could be ran in any order, so we need to tell sdk that its been unpatched
xray_core_patcher._PATCHED_MODULES = set()
xray_core.patch_all()
client = boto3.client('dynamodb', region_name='us-east-1')
with XRaySegment():
resp = client.list_tables()
resp['ResponseMetadata'].should.contain('RequestId')
id1 = resp['ResponseMetadata']['RequestId']
with XRaySegment():
client.list_tables()
resp = client.list_tables()
id2 = resp['ResponseMetadata']['RequestId']
id1.should_not.equal(id2)
setattr(botocore.client.BaseClient, '_make_api_call', original_make_api_call)
setattr(botocore.endpoint.Endpoint, '_encode_headers', original_encode_headers)
setattr(requests.Session, 'request', original_session_request)
setattr(requests.Session, 'prepare_request', original_session_prep_request)
@mock_xray_client
def test_xray_udp_emitter_patched():
# Could be ran in any order, so we need to tell sdk that its been unpatched
xray_core_patcher._PATCHED_MODULES = set()
xray_core.patch_all()
assert isinstance(xray_core.xray_recorder._emitter, MockEmitter)
setattr(botocore.client.BaseClient, '_make_api_call', original_make_api_call)
setattr(botocore.endpoint.Endpoint, '_encode_headers', original_encode_headers)
setattr(requests.Session, 'request', original_session_request)
setattr(requests.Session, 'prepare_request', original_session_prep_request)
@mock_xray_client
def test_xray_context_patched():
# Could be ran in any order, so we need to tell sdk that its been unpatched
xray_core_patcher._PATCHED_MODULES = set()
xray_core.patch_all()
xray_core.xray_recorder._context.context_missing.should.equal('LOG_ERROR')
setattr(botocore.client.BaseClient, '_make_api_call', original_make_api_call)
setattr(botocore.endpoint.Endpoint, '_encode_headers', original_encode_headers)
setattr(requests.Session, 'request', original_session_request)
setattr(requests.Session, 'prepare_request', original_session_prep_request)