Run black on moto & test directories.
This commit is contained in:
parent
c820395dbf
commit
96e5b1993d
507 changed files with 52541 additions and 47814 deletions
|
|
@ -9,81 +9,86 @@ from moto.core.responses import flatten_json_request_body
|
|||
|
||||
|
||||
def test_flatten_json_request_body():
|
||||
spec = AWSServiceSpec(
|
||||
'data/emr/2009-03-31/service-2.json').input_spec('RunJobFlow')
|
||||
spec = AWSServiceSpec("data/emr/2009-03-31/service-2.json").input_spec("RunJobFlow")
|
||||
|
||||
body = {
|
||||
'Name': 'cluster',
|
||||
'Instances': {
|
||||
'Ec2KeyName': 'ec2key',
|
||||
'InstanceGroups': [
|
||||
{'InstanceRole': 'MASTER',
|
||||
'InstanceType': 'm1.small'},
|
||||
{'InstanceRole': 'CORE',
|
||||
'InstanceType': 'm1.medium'},
|
||||
"Name": "cluster",
|
||||
"Instances": {
|
||||
"Ec2KeyName": "ec2key",
|
||||
"InstanceGroups": [
|
||||
{"InstanceRole": "MASTER", "InstanceType": "m1.small"},
|
||||
{"InstanceRole": "CORE", "InstanceType": "m1.medium"},
|
||||
],
|
||||
'Placement': {'AvailabilityZone': 'us-east-1'},
|
||||
"Placement": {"AvailabilityZone": "us-east-1"},
|
||||
},
|
||||
'Steps': [
|
||||
{'HadoopJarStep': {
|
||||
'Properties': [
|
||||
{'Key': 'k1', 'Value': 'v1'},
|
||||
{'Key': 'k2', 'Value': 'v2'}
|
||||
],
|
||||
'Args': ['arg1', 'arg2']}},
|
||||
"Steps": [
|
||||
{
|
||||
"HadoopJarStep": {
|
||||
"Properties": [
|
||||
{"Key": "k1", "Value": "v1"},
|
||||
{"Key": "k2", "Value": "v2"},
|
||||
],
|
||||
"Args": ["arg1", "arg2"],
|
||||
}
|
||||
}
|
||||
],
|
||||
"Configurations": [
|
||||
{
|
||||
"Classification": "class",
|
||||
"Properties": {"propkey1": "propkey1", "propkey2": "propkey2"},
|
||||
},
|
||||
{"Classification": "anotherclass", "Properties": {"propkey3": "propkey3"}},
|
||||
],
|
||||
'Configurations': [
|
||||
{'Classification': 'class',
|
||||
'Properties': {'propkey1': 'propkey1',
|
||||
'propkey2': 'propkey2'}},
|
||||
{'Classification': 'anotherclass',
|
||||
'Properties': {'propkey3': 'propkey3'}},
|
||||
]
|
||||
}
|
||||
|
||||
flat = flatten_json_request_body('', body, spec)
|
||||
flat['Name'].should.equal(body['Name'])
|
||||
flat['Instances.Ec2KeyName'].should.equal(body['Instances']['Ec2KeyName'])
|
||||
flat = flatten_json_request_body("", body, spec)
|
||||
flat["Name"].should.equal(body["Name"])
|
||||
flat["Instances.Ec2KeyName"].should.equal(body["Instances"]["Ec2KeyName"])
|
||||
for idx in range(2):
|
||||
flat['Instances.InstanceGroups.member.' + str(idx + 1) + '.InstanceRole'].should.equal(
|
||||
body['Instances']['InstanceGroups'][idx]['InstanceRole'])
|
||||
flat['Instances.InstanceGroups.member.' + str(idx + 1) + '.InstanceType'].should.equal(
|
||||
body['Instances']['InstanceGroups'][idx]['InstanceType'])
|
||||
flat['Instances.Placement.AvailabilityZone'].should.equal(
|
||||
body['Instances']['Placement']['AvailabilityZone'])
|
||||
flat[
|
||||
"Instances.InstanceGroups.member." + str(idx + 1) + ".InstanceRole"
|
||||
].should.equal(body["Instances"]["InstanceGroups"][idx]["InstanceRole"])
|
||||
flat[
|
||||
"Instances.InstanceGroups.member." + str(idx + 1) + ".InstanceType"
|
||||
].should.equal(body["Instances"]["InstanceGroups"][idx]["InstanceType"])
|
||||
flat["Instances.Placement.AvailabilityZone"].should.equal(
|
||||
body["Instances"]["Placement"]["AvailabilityZone"]
|
||||
)
|
||||
|
||||
for idx in range(1):
|
||||
prefix = 'Steps.member.' + str(idx + 1) + '.HadoopJarStep'
|
||||
step = body['Steps'][idx]['HadoopJarStep']
|
||||
prefix = "Steps.member." + str(idx + 1) + ".HadoopJarStep"
|
||||
step = body["Steps"][idx]["HadoopJarStep"]
|
||||
i = 0
|
||||
while prefix + '.Properties.member.' + str(i + 1) + '.Key' in flat:
|
||||
flat[prefix + '.Properties.member.' +
|
||||
str(i + 1) + '.Key'].should.equal(step['Properties'][i]['Key'])
|
||||
flat[prefix + '.Properties.member.' +
|
||||
str(i + 1) + '.Value'].should.equal(step['Properties'][i]['Value'])
|
||||
while prefix + ".Properties.member." + str(i + 1) + ".Key" in flat:
|
||||
flat[prefix + ".Properties.member." + str(i + 1) + ".Key"].should.equal(
|
||||
step["Properties"][i]["Key"]
|
||||
)
|
||||
flat[prefix + ".Properties.member." + str(i + 1) + ".Value"].should.equal(
|
||||
step["Properties"][i]["Value"]
|
||||
)
|
||||
i += 1
|
||||
i = 0
|
||||
while prefix + '.Args.member.' + str(i + 1) in flat:
|
||||
flat[prefix + '.Args.member.' +
|
||||
str(i + 1)].should.equal(step['Args'][i])
|
||||
while prefix + ".Args.member." + str(i + 1) in flat:
|
||||
flat[prefix + ".Args.member." + str(i + 1)].should.equal(step["Args"][i])
|
||||
i += 1
|
||||
|
||||
for idx in range(2):
|
||||
flat['Configurations.member.' + str(idx + 1) + '.Classification'].should.equal(
|
||||
body['Configurations'][idx]['Classification'])
|
||||
flat["Configurations.member." + str(idx + 1) + ".Classification"].should.equal(
|
||||
body["Configurations"][idx]["Classification"]
|
||||
)
|
||||
|
||||
props = {}
|
||||
i = 1
|
||||
keyfmt = 'Configurations.member.{0}.Properties.entry.{1}'
|
||||
keyfmt = "Configurations.member.{0}.Properties.entry.{1}"
|
||||
key = keyfmt.format(idx + 1, i)
|
||||
while key + '.key' in flat:
|
||||
props[flat[key + '.key']] = flat[key + '.value']
|
||||
while key + ".key" in flat:
|
||||
props[flat[key + ".key"]] = flat[key + ".value"]
|
||||
i += 1
|
||||
key = keyfmt.format(idx + 1, i)
|
||||
props.should.equal(body['Configurations'][idx]['Properties'])
|
||||
props.should.equal(body["Configurations"][idx]["Properties"])
|
||||
|
||||
|
||||
def test_parse_qs_unicode_decode_error():
|
||||
body = b'{"key": "%D0"}, "C": "#0 = :0"}'
|
||||
request = AWSPreparedRequest('GET', 'http://request', {'foo': 'bar'}, body, False)
|
||||
request = AWSPreparedRequest("GET", "http://request", {"foo": "bar"}, body, False)
|
||||
BaseResponse().setup_class(request, request.url, request.headers)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue