|
|
|
@ -15,6 +15,48 @@ from coapthon.serializer import Serializer
|
|
|
|
|
__author__ = 'Giacomo Tanganelli'
|
|
|
|
|
__version__ = "2.0"
|
|
|
|
|
|
|
|
|
|
PAYLOAD = "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut " \
|
|
|
|
|
"labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et " \
|
|
|
|
|
"ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum " \
|
|
|
|
|
"dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore " \
|
|
|
|
|
"magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. " \
|
|
|
|
|
"Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit " \
|
|
|
|
|
"amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna " \
|
|
|
|
|
"aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita " \
|
|
|
|
|
"kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. " \
|
|
|
|
|
"Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore " \
|
|
|
|
|
"eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum " \
|
|
|
|
|
"zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer " \
|
|
|
|
|
"adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. " \
|
|
|
|
|
"Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip " \
|
|
|
|
|
"ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie " \
|
|
|
|
|
"consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim " \
|
|
|
|
|
"qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. " \
|
|
|
|
|
"Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat " \
|
|
|
|
|
"facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh " \
|
|
|
|
|
"euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis " \
|
|
|
|
|
"nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. " \
|
|
|
|
|
"Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore " \
|
|
|
|
|
"eu feugiat nulla facilisis. " \
|
|
|
|
|
"At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata " \
|
|
|
|
|
"sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam " \
|
|
|
|
|
"nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et " \
|
|
|
|
|
"accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem " \
|
|
|
|
|
"ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam " \
|
|
|
|
|
"diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea " \
|
|
|
|
|
"et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. est Lorem ipsum dolor " \
|
|
|
|
|
"sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor " \
|
|
|
|
|
"invidunt ut labore et dolore magna aliquyam erat. " \
|
|
|
|
|
"Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna " \
|
|
|
|
|
"aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita " \
|
|
|
|
|
"kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, " \
|
|
|
|
|
"consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam " \
|
|
|
|
|
"erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd " \
|
|
|
|
|
"gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, " \
|
|
|
|
|
"consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam " \
|
|
|
|
|
"erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd " \
|
|
|
|
|
"gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Tests(unittest.TestCase):
|
|
|
|
|
|
|
|
|
@ -23,7 +65,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
self.current_mid = random.randint(1, 1000)
|
|
|
|
|
self.server_mid = random.randint(1000, 2000)
|
|
|
|
|
self.server = CoAPServer("127.0.0.1", 5683)
|
|
|
|
|
self.server_thread = threading.Thread(target=self.server.listen, args=(10,))
|
|
|
|
|
self.server_thread = threading.Thread(target=self.server.listen, args=(1,))
|
|
|
|
|
self.server_thread.start()
|
|
|
|
|
self.queue = Queue()
|
|
|
|
|
|
|
|
|
@ -407,18 +449,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sollicitudin fermentum ornare. " \
|
|
|
|
|
"Cras accumsan tellus quis dui lacinia eleifend. Proin ultrices rutrum orci vitae luctus. " \
|
|
|
|
|
"Nullam malesuada pretium elit, at aliquam odio vehicula in. Etiam nec maximus elit. " \
|
|
|
|
|
"Etiam at erat ac ex ornare feugiat. Curabitur sed malesuada orci, id aliquet nunc. Phasellus " \
|
|
|
|
|
"nec leo luctus, blandit lorem sit amet, interdum metus. Duis efficitur volutpat magna, ac " \
|
|
|
|
|
"ultricies nibh aliquet sit amet. Etiam tempor egestas augue in hendrerit. Nunc eget augue " \
|
|
|
|
|
"ultricies, dignissim lacus et, vulputate dolor. Nulla eros odio, fringilla vel massa ut, " \
|
|
|
|
|
"facilisis cursus quam. Fusce faucibus lobortis congue. Fusce consectetur porta neque, id " \
|
|
|
|
|
"sollicitudin velit maximus eu. Sed pharetra leo quam, vel finibus turpis cursus ac. " \
|
|
|
|
|
"Aenean ac nisi massa. Cras commodo arcu nec ante tristique ullamcorper. Quisque eu hendrerit" \
|
|
|
|
|
" urna. Cras fringilla eros ut nunc maximus, non porta nisl mollis. Aliquam in rutrum massa." \
|
|
|
|
|
" Praesent tristique turpis dui, at ultri"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (1, 1, 1024)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -437,18 +468,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sollicitudin fermentum ornare. " \
|
|
|
|
|
"Cras accumsan tellus quis dui lacinia eleifend. Proin ultrices rutrum orci vitae luctus. " \
|
|
|
|
|
"Nullam malesuada pretium elit, at aliquam odio vehicula in. Etiam nec maximus elit. " \
|
|
|
|
|
"Etiam at erat ac ex ornare feugiat. Curabitur sed malesuada orci, id aliquet nunc. Phasellus " \
|
|
|
|
|
"nec leo luctus, blandit lorem sit amet, interdum metus. Duis efficitur volutpat magna, ac " \
|
|
|
|
|
"ultricies nibh aliquet sit amet. Etiam tempor egestas augue in hendrerit. Nunc eget augue " \
|
|
|
|
|
"ultricies, dignissim lacus et, vulputate dolor. Nulla eros odio, fringilla vel massa ut, " \
|
|
|
|
|
"facilisis cursus quam. Fusce faucibus lobortis congue. Fusce consectetur porta neque, id " \
|
|
|
|
|
"sollicitudin velit maximus eu. Sed pharetra leo quam, vel finibus turpis cursus ac. " \
|
|
|
|
|
"Aenean ac nisi massa. Cras commodo arcu nec ante tristique ullamcorper. Quisque eu hendrerit" \
|
|
|
|
|
" urna. Cras fringilla eros ut nunc maximus, non porta nisl mollis. Aliquam in rutrum massa." \
|
|
|
|
|
" Praesent tristique turpis dui, at ultri"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (0, 1, 1024)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -468,10 +488,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "a imperdiet nisl. Quisque a iaculis libero, id tempus lacus. Aenean convallis est non justo " \
|
|
|
|
|
"consectetur, a hendrerit enim consequat. In accumsan ante a egestas luctus. Etiam quis neque " \
|
|
|
|
|
"nec eros vestibulum faucibus. Nunc viverra ipsum lectus, vel scelerisque dui dictum a. Ut orci " \
|
|
|
|
|
"enim, ultrices a ultrices nec, pharetra in quam. Donec accumsan sit amet eros eget fermentum."
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (1, 1, 64)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -491,10 +508,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "a imperdiet nisl. Quisque a iaculis libero, id tempus lacus. Aenean convallis est non justo " \
|
|
|
|
|
"consectetur, a hendrerit enim consequat. In accumsan ante a egestas luctus. Etiam quis neque " \
|
|
|
|
|
"nec eros vestibulum faucibus. Nunc viverra ipsum lectus, vel scelerisque dui dictum a. Ut orci " \
|
|
|
|
|
"enim, ultrices a ultrices nec, pharetra in quam. Donec accumsan sit amet eros eget fermentum."
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (3, 1, 64)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -513,10 +527,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "a imperdiet nisl. Quisque a iaculis libero, id tempus lacus. Aenean convallis est non justo " \
|
|
|
|
|
"consectetur, a hendrerit enim consequat. In accumsan ante a egestas luctus. Etiam quis neque " \
|
|
|
|
|
"nec eros vestibulum faucibus. Nunc viverra ipsum lectus, vel scelerisque dui dictum a. Ut orci " \
|
|
|
|
|
"enim, ultrices a ultrices nec, pharetra in quam. Donec accumsan sit amet eros eget fermentum."
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (2, 0, 64)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -737,7 +748,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "Lorem ipsum dolo"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (0, 1, 16)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -757,7 +768,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "r sit amet, consectetur adipisci"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (1, 1, 32)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -777,7 +788,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "ng elit. Sed ut ultrices ligula. Pellentesque purus augue, cursu"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (2, 1, 64)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -797,8 +808,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "s ultricies est in, vehicula congue metus. Vestibulum vel justo lacinia, porttitor quam vitae, " \
|
|
|
|
|
"feugiat sapien. Quisque finibus, "
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (3, 1, 128)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -818,9 +828,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "nisi vitae rhoncus malesuada, augue mauris dapibus tellus, sit amet venenatis libero" \
|
|
|
|
|
" libero sed lorem. In pharetra turpis sed eros porta mollis. Quisque dictum dolor nisl," \
|
|
|
|
|
" imperdiet tincidunt augue malesuada vitae. Donec non felis urna. Suspendisse at hend"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (4, 1, 256)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -840,12 +848,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "rerit ex, quis aliquet ante. Vivamus ultrices dolor at elit tincidunt, eget fringilla " \
|
|
|
|
|
"ligula vestibulum. In molestie sagittis nibh, ut efficitur tellus faucibus non. Maecenas " \
|
|
|
|
|
"posuere elementum faucibus. Morbi nisi diam, molestie non feugiat et, elementum eget magna." \
|
|
|
|
|
" Donec vel sem facilisis quam viverra ultrices nec eu lacus. Sed molestie nisi id ultrices " \
|
|
|
|
|
"interdum. Curabitur pharetra sed tellus in dignissim. Duis placerat aliquam metus, volutpat " \
|
|
|
|
|
"elementum augue aliquam a. Nunc sed dolor at orci maximus portt"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (5, 1, 512)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
@ -865,18 +868,7 @@ class Tests(unittest.TestCase):
|
|
|
|
|
req.type = defines.Types["CON"]
|
|
|
|
|
req._mid = self.current_mid
|
|
|
|
|
req.destination = self.server_address
|
|
|
|
|
req.payload = "itor ac sit amet eros. Mauris et nisi in tortor pharetra rhoncus sit amet hendrerit metus. " \
|
|
|
|
|
"Integer laoreet placerat cursus. Nam a nulla ex. Donec laoreet sagittis libero quis " \
|
|
|
|
|
"imperdiet. Vivamus facilisis turpis nec rhoncus venenatis. Duis pulvinar tellus vel quam " \
|
|
|
|
|
"maximus imperdiet. Mauris eget nibh orci. Duis ut cursus nibh. Nulla sed commodo elit. " \
|
|
|
|
|
"Suspendisse ac eros lacinia, mattis turpis at, porttitor justo. Vivamus molestie " \
|
|
|
|
|
"tincidunt libero. Etiam porttitor lacus odio, at lobortis tortor scelerisque nec. " \
|
|
|
|
|
"Nullam non ante vel nisi ultrices consectetur. Maecenas massa felis, tempor eget " \
|
|
|
|
|
"malesuada eget, pretium eu sapien. Vivamus dapibus ante erat, non faucibus orci sodales " \
|
|
|
|
|
"sit amet. Cras magna felis, sodales eget magna sed, eleifend rutrum ligula. Vivamus interdum " \
|
|
|
|
|
"enim enim, eu facilisis tortor dignissim quis. Ut metus nulla, mattis non lorem et, " \
|
|
|
|
|
"elementum ultrices orci. Quisque eleifend, arcu vitae ullamcorper pulvinar, ipsum ex " \
|
|
|
|
|
"sodales arcu, eget consectetur mauris metus ac tortor. Donec id sem felis. Maur"
|
|
|
|
|
req.payload = PAYLOAD
|
|
|
|
|
req.block1 = (6, 0, 1024)
|
|
|
|
|
|
|
|
|
|
expected = Response()
|
|
|
|
|