Exemple #1
0
    def test_dynamic_prop(self):

        s = conf.Settings()
        s.add_config({
            "A": 3,
            "B": conf.prop_dynamic(lambda x: x.A + 10),
        })

        self.assertEqual(13, s.B)
        x1 = s.add_config({"A": 5})
        self.assertEqual(15, s.B)
        s.remove_config(x1)
        self.assertEqual(13, s.B)
Exemple #2
0
    def test_dynamic_prop(self):

        s = conf.Settings()
        s.add_config({
            "A": 3,
            "B": conf.prop_dynamic(lambda x: x.A + 10),
        })

        self.assertEqual(13, s.B)
        x1 = s.add_config({"A": 5})
        self.assertEqual(15, s.B)
        s.remove_config(x1)
        self.assertEqual(13, s.B)
Exemple #3
0
    def test_magic_props(self):

        zcalcs = [0]

        def calcz():
            zcalcs[0] += 1
            return 33

        s = conf.Settings()
        s.add_config({
            "A": 3,
            "B": conf.prop_dynamic(lambda x: x.A + 10),
            "Z": conf.prop_lazy(calcz),
        })

        self.assertEqual(33, s.Z)
        self.assertEqual(33, s.Z)
        self.assertEqual(33, s.Z)
        self.assertEqual(1, zcalcs[0])
Exemple #4
0
    def test_magic_props(self):

        zcalcs = [0]

        def calcz():
            zcalcs[0] += 1
            return 33

        s = conf.Settings()
        s.add_config({
            "A": 3,
            "B": conf.prop_dynamic(lambda x: x.A + 10),
            "Z": conf.prop_lazy(calcz),
        })

        self.assertEqual(33, s.Z)
        self.assertEqual(33, s.Z)
        self.assertEqual(33, s.Z)
        self.assertEqual(1, zcalcs[0])