53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
import unittest
|
|
from pylot.core.pick.autopick import PickingResults
|
|
|
|
class TestPickingResults(unittest.TestCase):
|
|
def setUp(self):
|
|
self.pr = PickingResults()
|
|
|
|
def test_dot_member_creation(self):
|
|
self.pr.x = 0
|
|
self.assertEqual(self.pr.x, 0)
|
|
self.pr.x += 42
|
|
self.assertEqual(self.pr.x, 42)
|
|
|
|
def test_dot_builtin_member(self):
|
|
self.assertEqual(self.pr.Pflag, 0)
|
|
self.pr.Pflag = 99
|
|
self.assertEqual(self.pr.Pflag, 99)
|
|
|
|
def test_key_access(self):
|
|
self.pr['y'] = 11
|
|
self.assertEqual(self.pr['y'], 11)
|
|
|
|
def test_builtin_fields(self):
|
|
self.assertEqual(self.pr.Pflag, 0)
|
|
|
|
def test_missing_attribute(self):
|
|
# accessing a missing attribute in a dictionary throws a KeyError
|
|
with self.assertRaises(KeyError):
|
|
self.pr['keydoesnotexist']
|
|
|
|
def test_in(self):
|
|
self.assertFalse('keydoesnotexist' in self.pr)
|
|
self.pr['k'] = 0
|
|
self.assertTrue('k' in self.pr)
|
|
|
|
def test_keys_function(self):
|
|
a = 99
|
|
self.pr.newkey = a
|
|
self.assertIn(a, self.pr.values())
|
|
self.assertIn('newkey', self.pr.keys())
|
|
|
|
def test_len_and_clear(self):
|
|
self.pr.clear()
|
|
self.assertEqual(len(self.pr), 0)
|
|
self.pr.a = 6
|
|
self.pr['b'] = 9
|
|
self.assertEqual(len(self.pr), 2)
|
|
|
|
def test_get_default(self):
|
|
self.assertEqual(self.pr.get('keynotexisting', 42), 42)
|
|
pflag = self.pr.get('Pflag', -1)
|
|
self.assertEqual(pflag, 0)
|
|
self.assertNotEqual(pflag, -1) |