|
18 | 18 | # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19 | 19 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
20 | 20 | # SOFTWARE.
|
21 |
| -from Adafruit_IO import Data, Feed, Group, Dashboard, Block, Layout |
| 21 | +from Adafruit_IO import Data, Feed, Group, Dashboard, Block, Layout, GroupFeedData |
22 | 22 |
|
23 | 23 | import base
|
24 | 24 |
|
@@ -59,7 +59,7 @@ def test_feeds_have_explicitly_set_values(self):
|
59 | 59 | self.assertIsNone(feed.license)
|
60 | 60 | self.assertIsNone(feed.status_notify)
|
61 | 61 | self.assertIsNone(feed.status_timeout)
|
62 |
| - |
| 62 | + |
63 | 63 | def test_group_properties_are_optional(self):
|
64 | 64 | group = Group(name="foo")
|
65 | 65 | self.assertEqual(group.name, 'foo')
|
@@ -116,3 +116,19 @@ def test_from_dict_ignores_unknown_items(self):
|
116 | 116 | self.assertIsNone(data.expiration)
|
117 | 117 | self.assertIsNone(data.position)
|
118 | 118 | self.assertIsNone(data.id)
|
| 119 | + |
| 120 | + |
| 121 | +class TestGroupFeedData(base.IOTestCase): |
| 122 | + |
| 123 | + def test_groupfeeddata_properties_are_optional(self): |
| 124 | + """GroupFeedData fields have optional properties |
| 125 | + """ |
| 126 | + data = GroupFeedData(value='foo', key='test_key') |
| 127 | + self.assertEqual(data.value, 'foo') |
| 128 | + self.assertEqual(data.key, 'test_key') |
| 129 | + |
| 130 | + def test_groupfeeddata_from_dict_ignores_unknown_items(self): |
| 131 | + data = GroupFeedData.from_dict({'value': 'foo', 'key': 'test_key', 'unknown_param': 42}) |
| 132 | + self.assertEqual(data.value, 'foo') |
| 133 | + self.assertEqual(data.key, 'test_key') |
| 134 | + self.assertFalse(data.has_key('unknown_param')) |
0 commit comments