Example #1
0
 def test___eq__(self):
     v1 = Variable(self.root, name='abc')
     v2 = Variable(self.root, name='abc')
     self.assertEqual(v1, v2)
     v3 = Variable(self.root, name='abc')
     v4 = StringVar(self.root, name='abc')
     self.assertNotEqual(v3, v4)
Example #2
0
 def test_dont_unset_not_existing(self):
     self.assertFalse(self.info_exists('varname'))
     v1 = Variable(self.root, name='name')
     v2 = Variable(self.root, name='name')
     del v1
     self.assertFalse(self.info_exists('name'))
     del v2
     self.assertFalse(self.info_exists('name'))
Example #3
0
    def test___eq__(self):
        # values doesn't matter, only class and name are checked
        v1 = Variable(self.root, name="abc")
        v2 = Variable(self.root, name="abc")
        self.assertEqual(v1, v2)

        v3 = Variable(self.root, name="abc")
        v4 = StringVar(self.root, name="abc")
        self.assertNotEqual(v3, v4)
Example #4
0
 def test_dont_unset_not_existing(self):
     self.assertFalse(self.info_exists("varname"))
     v1 = Variable(self.root, name="name")
     v2 = Variable(self.root, name="name")
     del v1
     self.assertFalse(self.info_exists("name"))
     # shouldn't raise exception
     del v2
     self.assertFalse(self.info_exists("name"))
Example #5
0
 def test_null_in_name(self):
     with self.assertRaises(ValueError):
         Variable(self.root, name='var\x00name')
     with self.assertRaises(ValueError):
         self.root.globalsetvar('var\x00name', "value")
     with self.assertRaises(ValueError):
         self.root.setvar('var\x00name', "value")
Example #6
0
 def test___del__(self):
     self.assertFalse(self.info_exists("varname"))
     v = Variable(self.root, "sample string", "varname")
     self.assertTrue(self.info_exists("varname"))
     del v
     gc_collect()
     self.assertFalse(self.info_exists("varname"))
Example #7
0
    def __init__(self,parent=None):
        Frame.__init__(self,parent)
        self.parent = parent
        self.pack() # Pack.config(self)  # same as self.pack()
        ABC.make_widgets(self)
        Button(self, text='Pop1', command=self.dialog1).pack()
        enable = {'ID1050': 0, 'ID1106': 0, 'ID1104': 0, 'ID1102': 0}
        for machine in enable:
            enable[machine] = Variable()
            l = Checkbutton(self, text=machine, variable=enable[machine])
            l.pack()

        self.pack()
Example #8
0
    def test_trace(self):
        v = Variable(self.root)
        vname = str(v)
        trace = []

        def read_tracer(*args):
            trace.append(('read', ) + args)

        def write_tracer(*args):
            trace.append(('write', ) + args)

        cb1 = v.trace_variable('r', read_tracer)
        cb2 = v.trace_variable('wu', write_tracer)
        self.assertEqual(sorted(v.trace_vinfo()), [('r', cb1), ('wu', cb2)])
        self.assertEqual(trace, [])

        v.set('spam')
        self.assertEqual(trace, [('write', vname, '', 'w')])

        trace = []
        v.get()
        self.assertEqual(trace, [('read', vname, '', 'r')])

        trace = []
        info = sorted(v.trace_vinfo())
        v.trace_vdelete('w', cb1)  # Wrong mode
        self.assertEqual(sorted(v.trace_vinfo()), info)
        with self.assertRaises(TclError):
            v.trace_vdelete('r', 'spam')  # Wrong command name
        self.assertEqual(sorted(v.trace_vinfo()), info)
        v.trace_vdelete('r', (cb1, 43))  # Wrong arguments
        self.assertEqual(sorted(v.trace_vinfo()), info)
        v.get()
        self.assertEqual(trace, [('read', vname, '', 'r')])

        trace = []
        v.trace_vdelete('r', cb1)
        self.assertEqual(v.trace_vinfo(), [('wu', cb2)])
        v.get()
        self.assertEqual(trace, [])

        trace = []
        del write_tracer
        gc_collect()
        v.set('eggs')
        self.assertEqual(trace, [('write', vname, '', 'w')])
Example #9
0
 def test_invalid_name(self):
     with self.assertRaises(TypeError):
         Variable(self.root, name=123)
Example #10
0
 def test_name_and_value(self):
     v = Variable(self.root, "sample string", "varname")
     self.assertEqual("sample string", v.get())
     self.assertEqual("varname", str(v))
Example #11
0
 def test_default(self):
     v = Variable(self.root)
     self.assertEqual("", v.get())
     self.assertRegexpMatches(str(v), r"^PY_VAR(\d+)$")
Example #12
0
 def test___del__(self):
     self.assertFalse(self.info_exists('varname'))
     v = Variable(self.root, 'sample string', 'varname')
     self.assertTrue(self.info_exists('varname'))
     del v
     self.assertFalse(self.info_exists('varname'))
Example #13
0
 def test_name_and_value(self):
     v = Variable(self.root, 'sample string', 'varname')
     self.assertEqual('sample string', v.get())
     self.assertEqual('varname', str(v))