Skip to content

Testsuite failures with older python3 versions due to dict order #1255

@glaubitz

Description

@glaubitz

While packaging serverless-application-model for openSUSE and SLE, I ran into testsuite failures that only showed with Python 3.4 in SLE-12 but not with Python 3.6 in SLE-15.

The failures indicate that the tests do not account for the fact that the order of dictionaries in Python are non-deterministic:

[  206s] =================================== FAILURES ===================================
[  206s]  TestImplicitApiPlugin_process_api_events.test_must_retain_side_effect_of_modifying_events 
[  206s] 
[  206s] self = <tests.plugins.api.test_implicit_api_plugin.TestImplicitApiPlugin_process_api_events testMethod=test_must_retain_side_effect_of_modifying_events>
[  206s] 
[  206s]     def test_must_retain_side_effect_of_modifying_events(self):
[  206s]         """
[  206s]             It must retain any changes made to the Event dictionary by helper methods
[  206s]             """
[  206s]     
[  206s]         api_events = {
[  206s]             "Api1": {
[  206s]                 "Type": "Api",
[  206s]                 "Properties": {
[  206s]                     "Path": "/",
[  206s]                     "Method": "get"
[  206s]                 }
[  206s]             },
[  206s]             "Api2": {
[  206s]                 "Type": "Api",
[  206s]                 "Properties": {
[  206s]                     "Path": "/foo",
[  206s]                     "Method": "post"
[  206s]                 }
[  206s]             }
[  206s]         }
[  206s]     
[  206s]         template = Mock()
[  206s]         function = SamResource({
[  206s]             "Type": SamResourceType.Function.value,
[  206s]             "Properties": {
[  206s]                 "Events": {
[  206s]                     "Api1": "Intentionally setting this value to a string for testing. "
[  206s]                             "This should be replaced by API Event after processing",
[  206s]     
[  206s]                     "Api2": "must be replaced"
[  206s]                 }
[  206s]             }
[  206s]         })
[  206s]     
[  206s]         def add_key_to_event(event_properties):
[  206s]             event_properties["Key"] = "Value"
[  206s]     
[  206s]         # Apply the side effect of adding a key to events dict
[  206s]         self.plugin._add_implicit_api_id_if_necessary.side_effect = add_key_to_event
[  206s]     
[  206s]         self.plugin._process_api_events(function, api_events, template)
[  206s]     
[  206s]         # Side effect must be visible after call returns on the input object
[  206s]         self.assertEqual(api_events["Api1"]["Properties"], {"Path": "/", "Method": "get", "Key": "Value"})
[  206s]         self.assertEqual(api_events["Api2"]["Properties"], {"Path": "/foo", "Method": "post", "Key": "Value"})
[  206s]     
[  206s]         # Every Event object inside the SamResource class must be entirely replaced by input api_events with side effect
[  206s]         self.assertEqual(function.properties["Events"]["Api1"]["Properties"], {"Path": "/", "Method": "get", "Key": "Value"})
[  206s]         self.assertEqual(function.properties["Events"]["Api2"]["Properties"], {"Path": "/foo", "Method": "post", "Key": "Value"})
[  206s]     
[  206s]         # Subsequent calls must be made with the side effect. This is important.
[  206s]         self.plugin._add_api_to_swagger.assert_has_calls([
[  206s]             call("Api1",
[  206s]                  # Side effects should be visible here
[  206s]                  {"Path": "/", "Method": "get", "Key": "Value"},
[  206s]                  template),
[  206s]             call("Api2",
[  206s]                  # Side effects should be visible here
[  206s]                  {"Path": "/foo", "Method": "post", "Key": "Value"},
[  206s] >                template),
[  206s]         ])
[  206s] 
[  206s] tests/plugins/api/test_implicit_api_plugin.py:567: 
[  206s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
[  206s] /usr/lib/python3.4/site-packages/mock/mock.py:969: in assert_has_calls
[  206s]     ), cause)
[  206s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
[  206s] 
[  206s] value = None, from_value = None
[  206s] 
[  206s] >   ???
[  206s] E   AssertionError: Calls not found.
[  206s] E   Expected: [call('Api1', {'Path': '/', 'Key': 'Value', 'Method': 'get'}, <Mock id='140614884569496'>),
[  206s] E    call('Api2', {'Path': '/foo', 'Key': 'Value', 'Method': 'post'}, <Mock id='140614884569496'>)]
[  206s] E   Actual: [call('Api2', {'Path': '/foo', 'Key': 'Value', 'Method': 'post'}, <Mock id='140614884569496'>),
[  206s] E    call('Api1', {'Path': '/', 'Key': 'Value', 'Method': 'get'}, <Mock id='140614884569496'>)]
[  206s] 
[  206s] <string>:3: AssertionError
[  206s] ___ TestImplicitApiPlugin_process_api_events.test_must_work_with_api_events ____
[  206s] 
[  206s] self = <tests.plugins.api.test_implicit_api_plugin.TestImplicitApiPlugin_process_api_events testMethod=test_must_work_with_api_events>
[  206s] 
[  206s]     def test_must_work_with_api_events(self):
[  206s]         api_events = {
[  206s]             "Api1": {
[  206s]                 "Type": "Api",
[  206s]                 "Properties": {
[  206s]                     "Path": "/",
[  206s]                     "Method": "GET"
[  206s]                 }
[  206s]             },
[  206s]             "Api2": {
[  206s]                 "Type": "Api",
[  206s]                 "Properties": {
[  206s]                     "Path": "/foo",
[  206s]                     "Method": "POST"
[  206s]                 }
[  206s]             }
[  206s]         }
[  206s]     
[  206s]         template = Mock()
[  206s]         function_events_mock = Mock()
[  206s]         function = SamResource({
[  206s]             "Type": SamResourceType.Function.value,
[  206s]             "Properties": {
[  206s]                 "Events": function_events_mock
[  206s]             }
[  206s]         })
[  206s]         function_events_mock.update = Mock()
[  206s]     
[  206s]         self.plugin._process_api_events(function, api_events, template)
[  206s]     
[  206s]         self.plugin._add_implicit_api_id_if_necessary.assert_has_calls([
[  206s]             call({"Path": "/", "Method": "GET"}),
[  206s] >           call({"Path": "/foo", "Method": "POST"}),
[  206s]         ])
[  206s] 
[  206s] tests/plugins/api/test_implicit_api_plugin.py:391: 
[  206s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
[  206s] /usr/lib/python3.4/site-packages/mock/mock.py:969: in assert_has_calls
[  206s]     ), cause)
[  206s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
[  206s] 
[  206s] value = None, from_value = None
[  206s] 
[  206s] >   ???
[  206s] E   AssertionError: Calls not found.
[  206s] E   Expected: [call({'Path': '/', 'Method': 'GET'}),
[  206s] E    call({'Path': '/foo', 'Method': 'POST'})]
[  206s] E   Actual: [call({'Path': '/foo', 'Method': 'POST'}),
[  206s] E    call({'Path': '/', 'Method': 'GET'})]
[  206s] 
[  206s] <string>:3: AssertionError
[  206s] __________ TestSamTemplate.test_iterate_must_filter_by_resource_type ___________
[  206s] 
[  206s] self = <tests.sdk.test_template.TestSamTemplate testMethod=test_iterate_must_filter_by_resource_type>
[  206s] 
[  206s]     def test_iterate_must_filter_by_resource_type(self):
[  206s]     
[  206s]         template = SamTemplate(self.template_dict)
[  206s]     
[  206s]         type = "AWS::Serverless::Function"
[  206s]         expected = [
[  206s]             ("Function1", {"Type": "AWS::Serverless::Function", "DependsOn": "SomeOtherResource", "Properties": {}}),
[  206s]             ("Function2", {"Type": "AWS::Serverless::Function", "a": "b", "Properties": {}}),
[  206s]         ]
[  206s]     
[  206s]         actual = [(id, resource.to_dict()) for id, resource in template.iterate(type)]
[  206s] >       self.assertEqual(expected, actual)
[  206s] E       AssertionError: Lists differ: [('Function1', {'Type': 'AWS::Serverless::Function',[131 chars]{}})] != [('Function2', {'Type': 'AWS::Serverless::Function',[131 chars]{}})]
[  206s] E       
[  206s] E       First differing element 0:
[  206s] E       ('Function1', {'Type': 'AWS::Serverless::Function', 'DependsOn': 'SomeOtherResource', 'Properties': {}})
[  206s] E       ('Function2', {'Type': 'AWS::Serverless::Function', 'a': 'b', 'Properties': {}})
[  206s] E       
[  206s] E       - [('Function1',
[  206s] E       ?            ^
[  206s] E       
[  206s] E       + [('Function2',
[  206s] E       ?            ^
[  206s] E       
[  206s] E       +   {'Properties': {}, 'Type': 'AWS::Serverless::Function', 'a': 'b'}),
[  206s] E       +  ('Function1',
[  206s] E           {'DependsOn': 'SomeOtherResource',
[  206s] E            'Properties': {},
[  206s] E       -    'Type': 'AWS::Serverless::Function'}),
[  206s] E       ?                                         ^
[  206s] E       
[  206s] E       +    'Type': 'AWS::Serverless::Function'})]
[  206s] E       ?                                         ^
[  206s] E       
[  206s] E       -  ('Function2',
[  206s] E       -   {'Properties': {}, 'Type': 'AWS::Serverless::Function', 'a': 'b'})]
[  206s] 
[  206s] tests/sdk/test_template.py:63: AssertionError
[  206s] ____ test_transform_invalid_document[error_api_duplicate_methods_same_path] ____
[  206s] 
[  206s] testcase = 'error_api_duplicate_methods_same_path'
[  206s] 
[  206s]     @pytest.mark.parametrize('testcase', [
[  206s]         'error_api_duplicate_methods_same_path',
[  206s]         'error_api_gateway_responses_nonnumeric_status_code',
[  206s]         'error_api_gateway_responses_unknown_responseparameter',
[  206s]         'error_api_gateway_responses_unknown_responseparameter_property',
[  206s]         'error_api_invalid_auth',
[  206s]         'error_api_invalid_path',
[  206s]         'error_api_invalid_definitionuri',
[  206s]         'error_api_invalid_definitionbody',
[  206s]         'error_api_invalid_stagename',
[  206s]         'error_api_invalid_restapiid',
[  206s]         'error_application_properties',
[  206s]         'error_application_does_not_exist',
[  206s]         'error_application_no_access',
[  206s]         'error_application_preparing_timeout',
[  206s]         'error_cors_on_external_swagger',
[  206s]         'error_invalid_cors_dict',
[  206s]         'error_invalid_findinmap',
[  206s]         'error_invalid_getatt',
[  206s]         'error_cors_credentials_true_with_wildcard_origin',
[  206s]         'error_cors_credentials_true_without_explicit_origin',
[  206s]         'error_function_invalid_codeuri',
[  206s]         'error_function_invalid_api_event',
[  206s]         'error_function_invalid_autopublishalias',
[  206s]         'error_function_invalid_event_type',
[  206s]         'error_function_invalid_layer',
[  206s]         'error_function_no_codeuri',
[  206s]         'error_function_no_handler',
[  206s]         'error_function_no_runtime',
[  206s]         'error_function_with_deployment_preference_missing_alias',
[  206s]         'error_function_with_invalid_deployment_preference_hook_property',
[  206s]         'error_invalid_logical_id',
[  206s]         'error_layer_invalid_properties',
[  206s]         'error_missing_queue',
[  206s]         'error_missing_startingposition',
[  206s]         'error_missing_stream',
[  206s]         'error_multiple_resource_errors',
[  206s]         'error_s3_not_in_template',
[  206s]         'error_table_invalid_attributetype',
[  206s]         'error_invalid_resource_parameters',
[  206s]         'error_reserved_sam_tag',
[  206s]         'existing_event_logical_id',
[  206s]         'existing_permission_logical_id',
[  206s]         'existing_role_logical_id',
[  206s]         'error_invalid_template',
[  206s]         'error_resource_not_dict',
[  206s]         'error_resource_properties_not_dict',
[  206s]         'error_globals_is_not_dict',
[  206s]         'error_globals_unsupported_type',
[  206s]         'error_globals_unsupported_property',
[  206s]         'error_globals_api_with_stage_name',
[  206s]         'error_function_policy_template_with_missing_parameter',
[  206s]         'error_function_policy_template_invalid_value',
[  206s]         'error_function_with_unknown_policy_template',
[  206s]         'error_function_with_invalid_policy_statement'
[  206s]     ])
[  206s]     @patch('boto3.session.Session.region_name', 'ap-southeast-1')
[  206s]     @patch('samtranslator.plugins.application.serverless_app_plugin.ServerlessAppPlugin._sar_service_call', mock_sar_service_call)
[  206s]     @patch('botocore.client.ClientEndpointBridge._check_default_region', mock_get_region)
[  206s]     def test_transform_invalid_document(testcase):
[  206s]         manifest = yaml_parse(open(os.path.join(INPUT_FOLDER, testcase + '.yaml'), 'r'))
[  206s]         expected = json.load(open(os.path.join(OUTPUT_FOLDER, testcase + '.json'), 'r'))
[  206s]     
[  206s]         mock_policy_loader = MagicMock()
[  206s]         parameter_values = get_template_parameter_values()
[  206s]     
[  206s]         with pytest.raises(InvalidDocumentException) as e:
[  206s]             transform(manifest, parameter_values, mock_policy_loader)
[  206s]     
[  206s]         error_message = get_exception_error_message(e)
[  206s]     
[  206s] >       assert error_message == expected.get('errorMessage')
[  206s] E       assert 'Invalid Serv... path "/add".' == 'Invalid Serve... path "/add".'
[  206s] E         - Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [Function1] is invalid. Event with id [AddItem] is invalid. API method "post" defined multiple times for path "/add".
[  206s] E         ?                                                                                                             ^                             ^^^^^^^
[  206s] E         + Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [Function2] is invalid. Event with id [GetHtml] is invalid. API method "post" defined multiple times for path...
[  206s] E         
[  206s] E         ...Full output truncated (2 lines hidden), use '-vv' to show
[  206s] 
[  206s] tests/translator/test_translator.py:421: AssertionError
[  206s] ------------------------------ Captured log call -------------------------------
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
[  206s] hooks.py                   417 DEBUG    Changing event name from before-call.apigateway to before-call.api-gateway
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
[  206s] hooks.py                   417 DEBUG    Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
[  206s] hooks.py                   417 DEBUG    Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
[  206s] hooks.py                   417 DEBUG    Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
[  206s] ==================== 4 failed, 961 passed in 109.13 seconds ====================

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions