58 lines
1.5 KiB
Python
58 lines
1.5 KiB
Python
|
"""
|
|||
|
Slixmpp: The Slick XMPP Library
|
|||
|
Copyright (C) 2017 Emmanuel Gil Peyrot
|
|||
|
This file is part of Slixmpp.
|
|||
|
|
|||
|
See the file LICENSE for copying permission.
|
|||
|
"""
|
|||
|
|
|||
|
import unittest
|
|||
|
from slixmpp import Iq
|
|||
|
from slixmpp.test import SlixTest
|
|||
|
from slixmpp.plugins.xep_0300 import Hash
|
|||
|
from slixmpp.xmlstream import register_stanza_plugin
|
|||
|
|
|||
|
|
|||
|
class TestHash(SlixTest):
|
|||
|
|
|||
|
def setUp(self):
|
|||
|
register_stanza_plugin(Iq, Hash)
|
|||
|
|
|||
|
def testSimpleElement(self):
|
|||
|
"""Test that the element is created correctly."""
|
|||
|
iq = Iq()
|
|||
|
iq['type'] = 'set'
|
|||
|
iq['hash']['algo'] = 'sha-256'
|
|||
|
iq['hash']['value'] = 'EQgS9n+h4fARf289cCQcGkKnsHcRqTwkd8xRbZBC+ds='
|
|||
|
|
|||
|
self.check(iq, """
|
|||
|
<iq type="set">
|
|||
|
<hash xmlns="urn:xmpp:hashes:2" algo="sha-256">EQgS9n+h4fARf289cCQcGkKnsHcRqTwkd8xRbZBC+ds=</hash>
|
|||
|
</iq>
|
|||
|
""")
|
|||
|
|
|||
|
def testInvalidAlgo(self):
|
|||
|
"""Test that invalid algos raise an exception."""
|
|||
|
iq = Iq()
|
|||
|
iq['type'] = 'set'
|
|||
|
try:
|
|||
|
iq['hash']['algo'] = 'coucou'
|
|||
|
except ValueError:
|
|||
|
pass
|
|||
|
else:
|
|||
|
raise self.failureException
|
|||
|
|
|||
|
#def testDisabledAlgo(self):
|
|||
|
# """Test that disabled algos aren’t used."""
|
|||
|
# iq = Iq()
|
|||
|
# iq['type'] = 'set'
|
|||
|
# try:
|
|||
|
# iq['hash']['algo'] = 'sha-1'
|
|||
|
# except ValueError:
|
|||
|
# pass
|
|||
|
# else:
|
|||
|
# raise self.failureException
|
|||
|
|
|||
|
|
|||
|
suite = unittest.TestLoader().loadTestsFromTestCase(TestHash)
|