comparison sat_pubsub/test/test_storage.py @ 414:ccb2a22ea0fc

Python 3 port: /!\ Python 3.6+ is now needed to use SàT Pubsub /!\ instability may occur and features may not be working anymore, this will improve with time The same procedure as in backend has been applied (check backend commit ab2696e34d29 logs for details). Python minimal version has been updated in setup.py
author Goffi <goffi@goffi.org>
date Fri, 16 Aug 2019 12:53:33 +0200
parents c56a728412f1
children 074037832daf
comparison
equal deleted inserted replaced
413:a5edf5e1dd74 414:ccb2a22ea0fc
68 SUBSCRIBER_TO_BE_DELETED = jid.JID('to_be_deleted@example.com/Home') 68 SUBSCRIBER_TO_BE_DELETED = jid.JID('to_be_deleted@example.com/Home')
69 SUBSCRIBER_PENDING = jid.JID('pending@example.com/Home') 69 SUBSCRIBER_PENDING = jid.JID('pending@example.com/Home')
70 PUBLISHER = jid.JID('publisher@example.com') 70 PUBLISHER = jid.JID('publisher@example.com')
71 ITEM = domish.Element((None, 'item')) 71 ITEM = domish.Element((None, 'item'))
72 ITEM['id'] = 'current' 72 ITEM['id'] = 'current'
73 ITEM.addElement(('testns', 'test'), content=u'Test \u2083 item') 73 ITEM.addElement(('testns', 'test'), content='Test \u2083 item')
74 ITEM_NEW = domish.Element((None, 'item')) 74 ITEM_NEW = domish.Element((None, 'item'))
75 ITEM_NEW['id'] = 'new' 75 ITEM_NEW['id'] = 'new'
76 ITEM_NEW.addElement(('testns', 'test'), content=u'Test \u2083 item') 76 ITEM_NEW.addElement(('testns', 'test'), content='Test \u2083 item')
77 ITEM_UPDATED = domish.Element((None, 'item')) 77 ITEM_UPDATED = domish.Element((None, 'item'))
78 ITEM_UPDATED['id'] = 'current' 78 ITEM_UPDATED['id'] = 'current'
79 ITEM_UPDATED.addElement(('testns', 'test'), content=u'Test \u2084 item') 79 ITEM_UPDATED.addElement(('testns', 'test'), content='Test \u2084 item')
80 ITEM_TO_BE_DELETED = domish.Element((None, 'item')) 80 ITEM_TO_BE_DELETED = domish.Element((None, 'item'))
81 ITEM_TO_BE_DELETED['id'] = 'to-be-deleted' 81 ITEM_TO_BE_DELETED['id'] = 'to-be-deleted'
82 ITEM_TO_BE_DELETED.addElement(('testns', 'test'), content=u'Test \u2083 item') 82 ITEM_TO_BE_DELETED.addElement(('testns', 'test'), content='Test \u2083 item')
83 83
84 def decode(object): 84 def decode(object):
85 if isinstance(object, str): 85 if isinstance(object, str):
86 object = object.decode('utf-8') 86 object = object.decode('utf-8')
87 return object 87 return object
228 self.assertEqual(self.node.getType(), 'leaf') 228 self.assertEqual(self.node.getType(), 'leaf')
229 229
230 230
231 def test_getConfiguration(self): 231 def test_getConfiguration(self):
232 config = self.node.getConfiguration() 232 config = self.node.getConfiguration()
233 self.assertIn('pubsub#persist_items', config.iterkeys()) 233 self.assertIn('pubsub#persist_items', iter(config.keys()))
234 self.assertIn('pubsub#deliver_payloads', config.iterkeys()) 234 self.assertIn('pubsub#deliver_payloads', iter(config.keys()))
235 self.assertEqual(config['pubsub#persist_items'], True) 235 self.assertEqual(config['pubsub#persist_items'], True)
236 self.assertEqual(config['pubsub#deliver_payloads'], True) 236 self.assertEqual(config['pubsub#deliver_payloads'], True)
237 237
238 238
239 def test_setConfiguration(self): 239 def test_setConfiguration(self):
261 return d 261 return d
262 262
263 263
264 def test_getMetaData(self): 264 def test_getMetaData(self):
265 metaData = self.node.getMetaData() 265 metaData = self.node.getMetaData()
266 for key, value in self.node.getConfiguration().iteritems(): 266 for key, value in self.node.getConfiguration().items():
267 self.assertIn(key, metaData.iterkeys()) 267 self.assertIn(key, iter(metaData.keys()))
268 self.assertEqual(value, metaData[key]) 268 self.assertEqual(value, metaData[key])
269 self.assertIn('pubsub#node_type', metaData.iterkeys()) 269 self.assertIn('pubsub#node_type', iter(metaData.keys()))
270 self.assertEqual(metaData['pubsub#node_type'], 'leaf') 270 self.assertEqual(metaData['pubsub#node_type'], 'leaf')
271 271
272 272
273 def test_getAffiliation(self): 273 def test_getAffiliation(self):
274 def cb(affiliation): 274 def cb(affiliation):
307 return d 307 return d
308 308
309 309
310 def test_getSubscription(self): 310 def test_getSubscription(self):
311 def cb(subscriptions): 311 def cb(subscriptions):
312 self.assertEquals(subscriptions[0].state, 'subscribed') 312 self.assertEqual(subscriptions[0].state, 'subscribed')
313 self.assertEquals(subscriptions[1].state, 'pending') 313 self.assertEqual(subscriptions[1].state, 'pending')
314 self.assertEquals(subscriptions[2], None) 314 self.assertEqual(subscriptions[2], None)
315 315
316 d = defer.gatherResults([self.node.getSubscription(SUBSCRIBER), 316 d = defer.gatherResults([self.node.getSubscription(SUBSCRIBER),
317 self.node.getSubscription(SUBSCRIBER_PENDING), 317 self.node.getSubscription(SUBSCRIBER_PENDING),
318 self.node.getSubscription(OWNER)]) 318 self.node.getSubscription(OWNER)])
319 d.addCallback(cb) 319 d.addCallback(cb)
345 return d 345 return d
346 346
347 347
348 def test_isSubscriber(self): 348 def test_isSubscriber(self):
349 def cb(subscribed): 349 def cb(subscribed):
350 self.assertEquals(subscribed[0][1], True) 350 self.assertEqual(subscribed[0][1], True)
351 self.assertEquals(subscribed[1][1], True) 351 self.assertEqual(subscribed[1][1], True)
352 self.assertEquals(subscribed[2][1], False) 352 self.assertEqual(subscribed[2][1], False)
353 self.assertEquals(subscribed[3][1], False) 353 self.assertEqual(subscribed[3][1], False)
354 354
355 d = defer.DeferredList([self.node.isSubscribed(SUBSCRIBER), 355 d = defer.DeferredList([self.node.isSubscribed(SUBSCRIBER),
356 self.node.isSubscribed(SUBSCRIBER.userhostJID()), 356 self.node.isSubscribed(SUBSCRIBER.userhostJID()),
357 self.node.isSubscribed(SUBSCRIBER_PENDING), 357 self.node.isSubscribed(SUBSCRIBER_PENDING),
358 self.node.isSubscribed(OWNER)]) 358 self.node.isSubscribed(OWNER)])
469 def cb1(node): 469 def cb1(node):
470 return node.getAffiliations() 470 return node.getAffiliations()
471 471
472 def cb2(affiliations): 472 def cb2(affiliations):
473 affiliations = dict(((a[0].full(), a[1]) for a in affiliations)) 473 affiliations = dict(((a[0].full(), a[1]) for a in affiliations))
474 self.assertEquals(affiliations[OWNER.userhost()], 'owner') 474 self.assertEqual(affiliations[OWNER.userhost()], 'owner')
475 475
476 d = self.s.getNode('pre-existing') 476 d = self.s.getNode('pre-existing')
477 d.addCallback(cb1) 477 d.addCallback(cb1)
478 d.addCallback(cb2) 478 d.addCallback(cb2)
479 return d 479 return d