예제 #1
0
 def setUp(self):
     n = NumberMeta(description='a number')
     s = StringMeta(description="a string")
     self.meta = Meta()
     self.meta.elements = {"a": s, "b": s}
     self.meta.required = ["a"]
     self.nmeta = Meta()
     self.nmeta.elements = {"a": n, "b": n}
     self.nmeta.required = ["a"]
예제 #2
0
    def test_equals_maps(self):
        self.meta.to_dict = MagicMock()
        m1 = Map(self.meta, {"a":"test"})
        m2 = Map(self.meta, {"a":"test2"})
        self.assertFalse(m1 == m2)
        self.assertTrue(m1 != m2)
        m2.a = "test"
        self.assertTrue(m1 == m2)
        self.assertFalse(m1 != m2)

        m2 = Map(self.meta, {"a":"test", "b":"test"})
        self.assertFalse(m1 == m2)
        m1["b"] = "test"
        self.assertTrue(m1 == m2)

        s = StringMeta(description="a string")
        meta2 = Meta()
        meta2.elements = {"a":s, "b":s}
        meta2.required = ["a"]
        meta2.to_dict = self.meta.to_dict
        m2 = Map(meta2, {"a":"test", "b":"test"})
        self.assertTrue(m1 == m2)
예제 #3
0
    def test_equals_maps(self):
        self.meta.to_dict = MagicMock()
        m1 = Map(self.meta, {"a": "test"})
        m2 = Map(self.meta, {"a": "test2"})
        assert not m1 == m2
        assert m1 != m2
        m2.a = "test"
        assert m1 == m2
        assert not m1 != m2

        m2 = Map(self.meta, {"a": "test", "b": "test"})
        assert not m1 == m2
        m1["b"] = "test"
        assert m1 == m2

        s = StringMeta(description="a string")
        meta2 = Meta()
        meta2.elements = {"a": s, "b": s}
        meta2.required = ["a"]
        meta2.to_dict = self.meta.to_dict
        m2 = Map(meta2, {"a": "test", "b": "test"})
        assert m1 == m2
예제 #4
0
    def test_to_dict(self):
        a_mock = MagicMock()
        s = StringMeta(description="a string")
        meta = Meta()
        meta.elements = OrderedDict()
        meta.elements["b"] = s
        meta.elements["c"] = s
        meta.elements["d"] = NumberMeta("int32")
        meta.elements["e"] = s
        m = Map(meta, {"b":"test", "d":123, "e":"e"})

        expected = OrderedDict()
        expected["typeid"] = "malcolm:core/Map:1.0"
        expected["b"] = "test"
        expected["d"] = 123
        expected["e"] = "e"
        self.assertEquals(expected, m.to_dict())
예제 #5
0
    def test_to_dict(self):
        a_mock = MagicMock()
        s = StringMeta(description="a string")
        meta = Meta()
        meta.elements = OrderedDict()
        meta.elements["b"] = s
        meta.elements["c"] = s
        meta.elements["d"] = NumberMeta("int32")
        meta.elements["e"] = s
        m = Map(meta, {"b":"test", "d":123, "e":"e"})

        expected = OrderedDict()
        expected["typeid"] = "malcolm:core/Map:1.0"
        expected["b"] = "test"
        expected["d"] = 123
        expected["e"] = "e"
        self.assertEquals(expected, m.to_dict())
예제 #6
0
class TestMeta(unittest.TestCase):

    def setUp(self):
        self.o = Meta("desc")
        self.o.notifier.add_squashed_change = Mock(
            wraps=self.o.notifier.add_squashed_change)
        self.o.set_notifier_path(self.o.notifier, ["path"])

    def test_init(self):
        assert self.o.writeable_in == []

    def test_set_description(self):
        description = "desc2"
        assert self.o.set_description(description) == description
        assert self.o.description == description
        self.o.notifier.add_squashed_change.assert_called_once_with(
            ["path", "description"], description)

    def test_set_tags(self):
        tags = ("widget:textinput",)
        assert self.o.set_tags(tags) == tags
        assert self.o.tags == tags
        self.o.notifier.add_squashed_change.assert_called_once_with(
            ["path", "tags"], tags)

    def test_set_writeable(self):
        writeable = True
        assert self.o.set_writeable(writeable) == writeable
        assert self.o.writeable == writeable
        self.o.notifier.add_squashed_change.assert_called_once_with(
            ["path", "writeable"], writeable)

    def test_set_label(self):
        label = "my label"
        assert self.o.set_label(label) == label
        assert self.o.label == label
        self.o.notifier.add_squashed_change.assert_called_once_with(
            ["path", "label"], label)
예제 #7
0
 def test_to_dict(self):
     m = Meta("desc")
     m.typeid = "filled_in_by_subclass"
     self.assertEqual(m.to_dict(), self.serialized)
예제 #8
0
 def setUp(self):
     m = Meta("desc")
     m.on_changed = Mock(wrap=m.on_changed)
     self.m = m
예제 #9
0
 def test_init(self):
     m = Meta("desc")
     self.assertEquals("desc", m.description)
예제 #10
0
 def setUp(self):
     self.o = Meta("desc")
     self.o.notifier.add_squashed_change = Mock(
         wraps=self.o.notifier.add_squashed_change)
     self.o.set_notifier_path(self.o.notifier, ["path"])
예제 #11
0
 def test_to_dict(self):
     m = Meta("desc")
     m.typeid = "filled_in_by_subclass"
     assert m.to_dict() == self.serialized
예제 #12
0
 def test_to_dict(self):
     m = Meta("desc")
     m.typeid = "filled_in_by_subclass"
     self.assertEqual(m.to_dict(), self.serialized)
예제 #13
0
 def setUp(self):
     m = Meta("desc")
     m.process = Mock()
     self.m = m
예제 #14
0
 def setUp(self):
     m = Meta("desc")
     m.report_changes = Mock(wrap=m.report_changes)
     self.m = m
예제 #15
0
 def setUp(self):
     m = Meta("desc")
     m.process = Mock()
     self.m = m