当前位置: 首页>>代码示例>>Python>>正文


Python GCM.handle_gcm_result方法代码示例

本文整理汇总了Python中gcm.GCM.handle_gcm_result方法的典型用法代码示例。如果您正苦于以下问题:Python GCM.handle_gcm_result方法的具体用法?Python GCM.handle_gcm_result怎么用?Python GCM.handle_gcm_result使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在gcm.GCM的用法示例。


在下文中一共展示了GCM.handle_gcm_result方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_canonical_ids

# 需要导入模块: from gcm import GCM [as 别名]
# 或者: from gcm.GCM import handle_gcm_result [as 别名]
    def test_canonical_ids(self):
        logging.root.setLevel(logging.DEBUG)

        mock_dao = MockDao()
        mock_helper = MockGcmHelper()
        gcm = GCM(mock_dao, mock_helper)
        gcm.tokens = [GcmToken(gcm_token='0'), GcmToken(gcm_token='1'), GcmToken(gcm_token='2'),
                      GcmToken(gcm_token='3'), GcmToken(gcm_token='4'), GcmToken(gcm_token='5'),
                      GcmToken(gcm_token='6'), GcmToken(gcm_token='7')]

        message = 'testing testing 1 2 3'

        response = {'multicast_id': 666, 'success': 4, 'canonical_ids': 2,
                    'results': [
                        {'error': 'something else'},
                        {'message_id': '11'},  # success
                        {'message_id': '22', 'registration_id': '3'},  # message with already existing canonical id
                        {'message_id': '33'},  # canonical id for previous
                        {'message_id': '44', 'registration_id': '123'},  # totally new canonical id
                        {'error': 'NotRegistered'},  # not registered
                        {'error': 'Unavailable'},
                        {'error': 'something else'}
                    ]}

        js = json.dumps(response)

        response_json = json.loads(js)
        results = response_json["results"]
        index = -1
        for result in results:
            index += 1
            token = gcm.tokens[index]
            gcm.handle_gcm_result(result, token, message)

        self.assertEqual(2, len(mock_dao.removed_tokens))
        self.assertEqual('2', mock_dao.removed_tokens[0].gcm_token)
        self.assertEqual('5', mock_dao.removed_tokens[1].gcm_token)

        self.assertEqual(1, len(mock_dao.updated_tokens))
        self.assertEqual('4', mock_dao.updated_tokens[0][0].gcm_token)
        self.assertEqual('123', mock_dao.updated_tokens[0][1])

        self.assertEqual(1, len(mock_helper.sent_tokens))
        self.assertEqual('6', mock_helper.sent_tokens[0][0].gcm_token)
        self.assertEqual(message, mock_helper.sent_tokens[0][1])
开发者ID:ArdaXi,项目名称:IrssiNotifier,代码行数:47,代码来源:gcm_test.py


注:本文中的gcm.GCM.handle_gcm_result方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。