| 
									
										
										
										
											2015-03-06 14:35:17 -03:00
										 |  |  | from __future__ import unicode_literals | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | import boto | 
					
						
							|  |  |  | from boto.exception import BotoServerError | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | from moto import mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | import sure  # noqa | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_create_platform_application(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "PlatformCredential": "platform_credential", | 
					
						
							|  |  |  |             "PlatformPrincipal": "platform_principal", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							|  |  |  |     application_arn.should.equal( | 
					
						
							|  |  |  |         'arn:aws:sns:us-east-1:123456789012:app/APNS/my-application') | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_get_platform_application_attributes(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "PlatformCredential": "platform_credential", | 
					
						
							|  |  |  |             "PlatformPrincipal": "platform_principal", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							|  |  |  |     attributes = conn.get_platform_application_attributes(arn)['GetPlatformApplicationAttributesResponse'][ | 
					
						
							|  |  |  |         'GetPlatformApplicationAttributesResult']['Attributes'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     attributes.should.equal({ | 
					
						
							|  |  |  |         "PlatformCredential": "platform_credential", | 
					
						
							|  |  |  |         "PlatformPrincipal": "platform_principal", | 
					
						
							|  |  |  |     }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_get_missing_platform_application_attributes(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     conn.get_platform_application_attributes.when.called_with( | 
					
						
							|  |  |  |         "a-fake-arn").should.throw(BotoServerError) | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_set_platform_application_attributes(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "PlatformCredential": "platform_credential", | 
					
						
							|  |  |  |             "PlatformPrincipal": "platform_principal", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     conn.set_platform_application_attributes(arn, | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |                                              {"PlatformPrincipal": "other"} | 
					
						
							|  |  |  |                                              ) | 
					
						
							|  |  |  |     attributes = conn.get_platform_application_attributes(arn)['GetPlatformApplicationAttributesResponse'][ | 
					
						
							|  |  |  |         'GetPlatformApplicationAttributesResult']['Attributes'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     attributes.should.equal({ | 
					
						
							|  |  |  |         "PlatformCredential": "platform_credential", | 
					
						
							|  |  |  |         "PlatformPrincipal": "other", | 
					
						
							|  |  |  |     }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_list_platform_applications(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     conn.create_platform_application( | 
					
						
							|  |  |  |         name="application1", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  |     conn.create_platform_application( | 
					
						
							|  |  |  |         name="application2", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     applications_repsonse = conn.list_platform_applications() | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     applications = applications_repsonse['ListPlatformApplicationsResponse'][ | 
					
						
							|  |  |  |         'ListPlatformApplicationsResult']['PlatformApplications'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     applications.should.have.length_of(2) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_delete_platform_application(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     conn.create_platform_application( | 
					
						
							|  |  |  |         name="application1", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  |     conn.create_platform_application( | 
					
						
							|  |  |  |         name="application2", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     applications_repsonse = conn.list_platform_applications() | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     applications = applications_repsonse['ListPlatformApplicationsResponse'][ | 
					
						
							|  |  |  |         'ListPlatformApplicationsResult']['PlatformApplications'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     applications.should.have.length_of(2) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     application_arn = applications[0]['PlatformApplicationArn'] | 
					
						
							|  |  |  |     conn.delete_platform_application(application_arn) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     applications_repsonse = conn.list_platform_applications() | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     applications = applications_repsonse['ListPlatformApplicationsResponse'][ | 
					
						
							|  |  |  |         'ListPlatformApplicationsResult']['PlatformApplications'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     applications.should.have.length_of(1) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_create_platform_endpoint(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint = conn.create_platform_endpoint( | 
					
						
							|  |  |  |         platform_application_arn=application_arn, | 
					
						
							|  |  |  |         token="some_unique_id", | 
					
						
							|  |  |  |         custom_user_data="some user data", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "Enabled": False, | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     endpoint_arn = endpoint['CreatePlatformEndpointResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformEndpointResult']['EndpointArn'] | 
					
						
							|  |  |  |     endpoint_arn.should.contain( | 
					
						
							|  |  |  |         "arn:aws:sns:us-east-1:123456789012:endpoint/APNS/my-application/") | 
					
						
							| 
									
										
										
										
											2015-03-06 14:35:17 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-06 14:35:17 -03:00
										 |  |  | def test_get_list_endpoints_by_platform_application(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint = conn.create_platform_endpoint( | 
					
						
							|  |  |  |         platform_application_arn=application_arn, | 
					
						
							|  |  |  |         token="some_unique_id", | 
					
						
							|  |  |  |         custom_user_data="some user data", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "CustomUserData": "some data", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     endpoint_arn = endpoint['CreatePlatformEndpointResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformEndpointResult']['EndpointArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-03-06 14:35:17 -03:00
										 |  |  |     endpoint_list = conn.list_endpoints_by_platform_application( | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |         platform_application_arn=application_arn | 
					
						
							| 
									
										
										
										
											2015-03-06 14:35:17 -03:00
										 |  |  |     )['ListEndpointsByPlatformApplicationResponse']['ListEndpointsByPlatformApplicationResult']['Endpoints'] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     endpoint_list.should.have.length_of(1) | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     endpoint_list[0]['Attributes']['CustomUserData'].should.equal('some data') | 
					
						
							|  |  |  |     endpoint_list[0]['EndpointArn'].should.equal(endpoint_arn) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_get_endpoint_attributes(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint = conn.create_platform_endpoint( | 
					
						
							|  |  |  |         platform_application_arn=application_arn, | 
					
						
							|  |  |  |         token="some_unique_id", | 
					
						
							|  |  |  |         custom_user_data="some user data", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "Enabled": False, | 
					
						
							|  |  |  |             "CustomUserData": "some data", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     endpoint_arn = endpoint['CreatePlatformEndpointResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformEndpointResult']['EndpointArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     attributes = conn.get_endpoint_attributes(endpoint_arn)['GetEndpointAttributesResponse'][ | 
					
						
							|  |  |  |         'GetEndpointAttributesResult']['Attributes'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     attributes.should.equal({ | 
					
						
							| 
									
										
										
										
											2016-11-11 17:01:47 -05:00
										 |  |  |         "Token": "some_unique_id", | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |         "Enabled": 'False', | 
					
						
							|  |  |  |         "CustomUserData": "some data", | 
					
						
							|  |  |  |     }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_get_missing_endpoint_attributes(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     conn.get_endpoint_attributes.when.called_with( | 
					
						
							|  |  |  |         "a-fake-arn").should.throw(BotoServerError) | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_set_endpoint_attributes(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint = conn.create_platform_endpoint( | 
					
						
							|  |  |  |         platform_application_arn=application_arn, | 
					
						
							|  |  |  |         token="some_unique_id", | 
					
						
							|  |  |  |         custom_user_data="some user data", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "Enabled": False, | 
					
						
							|  |  |  |             "CustomUserData": "some data", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     endpoint_arn = endpoint['CreatePlatformEndpointResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformEndpointResult']['EndpointArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     conn.set_endpoint_attributes(endpoint_arn, | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |                                  {"CustomUserData": "other data"} | 
					
						
							|  |  |  |                                  ) | 
					
						
							|  |  |  |     attributes = conn.get_endpoint_attributes(endpoint_arn)['GetEndpointAttributesResponse'][ | 
					
						
							|  |  |  |         'GetEndpointAttributesResult']['Attributes'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |     attributes.should.equal({ | 
					
						
							| 
									
										
										
										
											2016-11-11 17:01:47 -05:00
										 |  |  |         "Token": "some_unique_id", | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |         "Enabled": 'False', | 
					
						
							|  |  |  |         "CustomUserData": "other data", | 
					
						
							|  |  |  |     }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2016-05-02 14:34:51 +02:00
										 |  |  | def test_delete_endpoint(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2016-05-02 14:34:51 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint = conn.create_platform_endpoint( | 
					
						
							|  |  |  |         platform_application_arn=application_arn, | 
					
						
							|  |  |  |         token="some_unique_id", | 
					
						
							|  |  |  |         custom_user_data="some user data", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							|  |  |  |             "Enabled": False, | 
					
						
							|  |  |  |             "CustomUserData": "some data", | 
					
						
							|  |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     endpoint_arn = endpoint['CreatePlatformEndpointResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformEndpointResult']['EndpointArn'] | 
					
						
							| 
									
										
										
										
											2016-05-02 14:34:51 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint_list = conn.list_endpoints_by_platform_application( | 
					
						
							|  |  |  |         platform_application_arn=application_arn | 
					
						
							|  |  |  |     )['ListEndpointsByPlatformApplicationResponse']['ListEndpointsByPlatformApplicationResult']['Endpoints'] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     endpoint_list.should.have.length_of(1) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     conn.delete_endpoint(endpoint_arn) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     endpoint_list = conn.list_endpoints_by_platform_application( | 
					
						
							|  |  |  |         platform_application_arn=application_arn | 
					
						
							|  |  |  |     )['ListEndpointsByPlatformApplicationResponse']['ListEndpointsByPlatformApplicationResult']['Endpoints'] | 
					
						
							|  |  |  |     endpoint_list.should.have.length_of(0) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-15 22:35:45 -05:00
										 |  |  | @mock_sns_deprecated | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | def test_publish_to_platform_endpoint(): | 
					
						
							|  |  |  |     conn = boto.connect_sns() | 
					
						
							|  |  |  |     platform_application = conn.create_platform_application( | 
					
						
							|  |  |  |         name="my-application", | 
					
						
							|  |  |  |         platform="APNS", | 
					
						
							|  |  |  |     ) | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     application_arn = platform_application['CreatePlatformApplicationResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformApplicationResult']['PlatformApplicationArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |     endpoint = conn.create_platform_endpoint( | 
					
						
							|  |  |  |         platform_application_arn=application_arn, | 
					
						
							|  |  |  |         token="some_unique_id", | 
					
						
							|  |  |  |         custom_user_data="some user data", | 
					
						
							|  |  |  |         attributes={ | 
					
						
							| 
									
										
										
										
											2017-03-16 22:28:30 -04:00
										 |  |  |             "Enabled": True, | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  |         }, | 
					
						
							|  |  |  |     ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     endpoint_arn = endpoint['CreatePlatformEndpointResponse'][ | 
					
						
							|  |  |  |         'CreatePlatformEndpointResult']['EndpointArn'] | 
					
						
							| 
									
										
										
										
											2015-03-14 09:06:31 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-02-23 21:37:43 -05:00
										 |  |  |     conn.publish(message="some message", message_structure="json", | 
					
						
							|  |  |  |                  target_arn=endpoint_arn) |