86 Commits

Author SHA1 Message Date
Patrick Mende
5cccb03c91
Remove newlines from XML responses
This is a second attempt at resolving the issues with producing an XML consistent with what is produced from AWS (i.e., no spaces/new lines between tags). Another attempt (https://github.com/spulec/moto/pull/2205) is currently failing in tests.

This attempt uses precompiled regex patterns as class attributes of the `_TemplateEnvironmentMixin` to remove trailing spaces and newlines after a `">"`, and preceding newlines/spaces before a `"<"`. This *explicitly* wasn't done with a single regex to ensure that even things like `"...<ID>\n      12345\n    </ID>"` are properly collapsed.
2019-10-30 14:08:24 -07:00
gruebel
c3cb411c07 Refactor sqs.get_queue_attributes & add AttributeNames handling 2019-10-27 12:13:33 +01:00
acsbendi
9edab5b423 Simplified the reset-auth API. 2019-07-28 22:23:33 +02:00
acsbendi
1969338a8a Fixed set_initial_no_auth_action_count not working in server mode. 2019-07-27 00:12:28 +02:00
acsbendi
f3f47d44ac Fixed error in python 2 and did some refactoring. 2019-07-26 21:05:04 +02:00
acsbendi
140f4110ac set_initial_no_auth_action_count should restore request_count. 2019-07-26 20:41:40 +02:00
acsbendi
e22e8b5a67 set_initial_no_auth_action_count should also set request_count to 0. 2019-07-24 18:58:50 +02:00
acsbendi
15c872cffc Created decorator for setting INITIAL_NO_AUTH_ACTION_COUNT. 2019-07-24 18:15:31 +02:00
acsbendi
3dd2e3a1b8 Moved INITIAL_NO_AUTH_ACTION_COUNT to settings. 2019-07-24 16:30:48 +02:00
acsbendi
59f091bdea Default INITIAL_NO_AUTH_ACTION_COUNT should be infinity. 2019-07-11 13:58:57 +02:00
acsbendi
23957fe940 Implemented finding credentials from already created IAM users and roles. 2019-07-08 19:57:14 +02:00
acsbendi
5dbec8aee5 Implemented checking if S3 action is permitted. 2019-07-04 16:38:53 +02:00
acsbendi
6061d5d521 Introduced environment variable to delay the start of authorization. 2019-07-02 18:03:00 +02:00
acsbendi
fbd0749854 Implemented authentication for services except for S3. 2019-07-02 17:40:08 +02:00
Garrett
c739c5331e Handle UnicodeEncodeError when parsing querystring (#2170) 2019-05-25 18:34:47 +01:00
Andrew McCall
4092657472 Added double toto_str/from_str, returned by emr create_cluster 2018-11-22 17:10:33 +00:00
Fujimoto Seiji
b25e80188a AWSServiceSpec: Fix TypeError exceptions within json.load()
The load() method provided by the built-in JSON module does not accept a
byte-type value in Python 3.5 (or versions before), and will raise an
exception if one is passed.

For details, please see: https://bugs.python.org/issue17909

Thus, for better compatibility, we'd better decode the content of the
JSON file before passing it to the parser, instead of letting the module
to guess the encoding.
2018-04-24 16:33:39 +09:00
wblack
f401c60825 Include SNS message attributes with message body when delivering to SQS. 2018-04-18 13:42:36 +00:00
Benny Elgazar
67d7e8d590 Fix Unicode problem (#1562) 2018-04-12 14:06:24 -07:00
grahamlyons
f3debf8f6f Test and fix bug for snapshot searching
The logic which contructed a list of values for parameters with
multiple values was flawed in that e.g. `Subnet.1` and `Subnet.10`
would be have their values counted against `Subnet.1` because they
share a prefix.

This now checks for a starting `.` before counting that name as
having the requested prefix.
2018-01-29 14:30:21 +00:00
William Richard
09c5407b86
Fix tests that were introduced in PR #1398 2018-01-11 15:02:03 -05:00
Nuwan Goonasekera
56ce26a728 Added support for filtering AMIs by self (#1398)
* Added support for filtering AMIs by self

Closes: https://github.com/spulec/moto/issues/1396

* Adjusted regex to also match signature v4 and fixed py3 compatibility
2018-01-04 10:01:17 +00:00
Waldemar Hummer
24f83e91f2 return 404 error on missing action 2017-12-27 22:58:24 -05:00
Alexander Mohr
97687d153a Implement CloudWatch get_metric_statistics (#1369)
* implement get_metric_statistics
2017-12-01 20:37:27 +00:00
Terry Cain
d5ee48eedd
Lambda improvements (#1344)
* Revamped the lambda function storage to do versioning.

* Flake8

* .

* Fixes

* Swapped around an if
2017-11-26 21:28:28 +00:00
Toshiya Kawasaki
0de2e55b13 Support iot and iot-data (#1303)
* append appropriate urls when scaffolding

* make dispatch for rest-api

* fix dispatch for rest-json

* fix moto/core/response to obtain path and body parameters

* small fixes

* remove unused import

* fix get_int_param

* Add features of things and thing-types

* fix scaffold

* basic crud of cert

* support basic CRUD of policy

* refactor

* fix formatting of scaffold

* support principal_pocicy

* support thing_principal

* update readme

* escape service to handle service w/ hyphen like iot-data

* escape service w/ hyphen

* fix regexp to extract region from url

* escape service

* Implement basic iota-data feature

* iot-data shadow delta

* update readme

* remove unused import

* remove comment

* fix syntax

* specify region when creating boto3 client for test

* use uuid for seed of generating cert id

* specify region_name to iotdata client in test

* specify region to boto3 client in moto response

* excude iot and iotdata tests on server mode

* fix handling of thingTypeName in describe-thing

* test if server is up for iot
2017-11-10 09:44:02 +00:00
Toshiya Kawasaki
56793a3b2a Fix scaffold to support rest-json style API (#1291)
* append appropriate urls when scaffolding

* make dispatch for rest-api

* fix dispatch for rest-json

* fix moto/core/response to obtain path and body parameters

* small fixes

* remove unused import

* fix get_int_param

* fix scaffold

* fix formatting of scaffold

* fix misc

* escape service to handle service w/ hyphen like iot-data

* escape service w/ hyphen

* fix regexp to extract region from url

* escape service

* fix syntax

* skip loading body to json object when request body is None
2017-10-24 20:45:39 +02:00
Terry Cain
49ddb500a8 AWS X-Ray client mock. (#1255)
* X-Ray Client SDK patched

Fixes #1250

* Fixed flake8

* Fixed some issues

* Fixed flake8

* Fixed more typos

* Fixed python2 string

* Fixed aws-sdk patch order

* Added more test cases to test the patching
2017-10-16 17:06:22 -07:00
Terry Cain
745263857f
Fix parsing non V4 Authorization headers 2017-09-25 23:28:18 +01:00
Terry Cain
0bd3899cb3
Finished X-Ray + fixed routing bug 2017-09-23 11:02:25 +01:00
Terry Cain
a91c025398
Cleanup, and fix #1105 2017-09-22 20:08:20 +01:00
Steven Cipriano
c4b9088bfc Add support for recursive emr settings
- Updates _RecursiveDictRef to not implement __getitem__, avoiding errors when using recursive settings for an emr job flow
2017-06-27 11:31:43 -07:00
Steve Pulec
97b920f6cf Fix ec2 tags in instance create. Closes #938. 2017-05-12 19:48:24 -04:00
Steve Pulec
a0a205328d Cleanup SQS body encoding. Closes #458, #460. 2017-03-19 11:03:55 -04:00
Steve Pulec
2bd4567801 Do not use flask outside of server mode. 2017-03-14 23:26:31 -04:00
Steve Pulec
1709208872 First version of dashboard. 2017-03-11 22:45:42 -05:00
Steve Pulec
f37bad0e00 Lints. 2017-02-23 21:37:43 -05:00
Steve Pulec
81836b6981 Get standalone server mode working for all tests. 2017-02-23 19:43:48 -05:00
Steve Pulec
cb28eeefbb Add moto reset API. 2017-02-20 18:25:10 -05:00
Steve Pulec
cad185c74d Cleanup headers and encoding. 2017-02-16 22:51:04 -05:00
Steve Pulec
fde721bed7 Testing new version of decorator. 2017-02-15 22:35:45 -05:00
Steve Pulec
721d1b3a3f Merge pull request #736 from okomestudio/ts/botocore_update
Remove botocore version pinning
2016-11-06 09:50:28 -05:00
Taro Sato
5538b541a8 Fix a bug with map type not properly handling multiple entries 2016-10-31 11:29:39 -07:00
Taro Sato
484faa54c4 Implement filters and pagers for some EMR end points 2016-10-20 10:03:17 -07:00
Taro Sato
b632df3aa4 Generate proper empty value for XML/JSON 2016-10-16 21:49:10 -07:00
Steve Pulec
2e33e2be90 Merge pull request #735 from rocky4570/dryrun-ec2
Add dry_run to a number of EC2 services
2016-10-16 19:14:57 -04:00
rocky4570fft
d6f76cbb43 Add dry_run to a number of EC2 services 2016-10-16 00:34:52 +10:00
Taro Sato
7cd404808b Better EMR coverage and boto3 request/response handling
This revision includes:

- A handler for requests for which content-type is JSON (from boto3).

- A decorator (generate_boto3_response) to convert XML responses to
  JSON (for boto3). This way, existing response templates for boto can
  be shared for generating boto3 response.

- Utility class/functions to use botocore's service specification data
  (accessible under botocore.data) for type casting, from query
  parameters to Python objects and XML to JSON.

- Updates to response handlers/models to cover more EMR end points and
  mockable parameters
2016-10-13 16:48:07 -07:00
Collin RM Stocks
1b65c45b56 ALWAYS use utcnow(), never now() 2016-09-07 14:40:52 -04:00
Nuno Santos
68eeb5948b Strip extra whitespace and newlines from SQS response templates.
Fixes #623
2016-06-02 12:26:50 +02:00