Add client.send_group_multiple_data tests

This commit is contained in:
tyeth 2025-05-22 18:09:11 +01:00
parent db45babec5
commit c3d2a66fa7

View file

@ -3,7 +3,7 @@
import time
import unittest
from Adafruit_IO import Client, Data, Feed, Group, Dashboard, Block, Layout, RequestError
from Adafruit_IO import Client, Data, Feed, Group, Dashboard, Block, Layout, RequestError, GroupFeedData
import base
@ -95,7 +95,7 @@ class TestClient(base.IOTestCase):
data = io.receive(test_feed.key)
self.assertEqual(int(data.value), 42)
def test_send_group_multiple_data(self):
def test_send_group_multiple_data_as_list(self):
"""send_group_multiple_data
"""
io = self.get_client()
@ -105,7 +105,10 @@ class TestClient(base.IOTestCase):
test_group = io.create_group(Group(name="testgroup"))
test_feed1 = io.create_feed(Feed(name="testfeed1"), test_group.key)
test_feed2 = io.create_feed(Feed(name="testfeed2"), test_group.key)
data_list = [GroupFeedData(value=42, key=test_feed1.key), GroupFeedData(value=42, key=test_feed2.key)]
data_list = [
GroupFeedData(value=42, key=test_feed1.key.replace(test_group.key + ".", "")),
GroupFeedData(value=42, key=test_feed2.key.replace(test_group.key + ".", ""))
]
io.send_group_multiple_data(test_group.key, data_list)
data = io.receive(test_feed1.key)
self.assertEqual(int(data.value), 42)
@ -115,6 +118,35 @@ class TestClient(base.IOTestCase):
self.ensure_feed_deleted(io, 'testfeed2')
self.ensure_group_deleted(io, 'testgroup')
def test_send_group_multiple_data_as_dict(self):
"""send_group_multiple_data
"""
io = self.get_client()
self.ensure_group_deleted(io, 'testgroup')
self.ensure_feed_deleted(io, 'testfeed1')
self.ensure_feed_deleted(io, 'testfeed2')
test_group = io.create_group(Group(name="testgroup"))
test_feed1 = io.create_feed(Feed(name="testfeed1"), test_group.key)
test_feed2 = io.create_feed(Feed(name="testfeed2"), test_group.key)
data_dict = {
"feeds": [
{"key": test_feed1.key.replace(test_group.key + ".", ""), "value": 43},
{"key": test_feed2.key.replace(test_group.key + ".", ""), "value": 43}
],
"lat": 40.726190,
"lon": -74.005334,
"ele": -6,
}
io.send_group_multiple_data(test_group.key, data_dict)
data = io.receive(test_feed1.key)
self.assertEqual(int(data.value), 43)
data = io.receive(test_feed2.key)
self.assertEqual(int(data.value), 43)
self.ensure_feed_deleted(io, 'testfeed1')
self.ensure_feed_deleted(io, 'testfeed2')
self.ensure_group_deleted(io, 'testgroup')
def test_receive_next(self):
"""receive_next
"""