コード例 #1
0
 def testValues(self):
     transaction = Transaction()
     session = Session(transaction, 'test')
     self.assertRaises(KeyError, session.value, 'a')
     self.assertIsNone(session.value('a', None))
     self.assertEqual(session.value('a', 0), 0)
     self.assertEqual(session.value('a', 'foo'), 'foo')
     self.assertIs(session.hasValue('a'), False)
     session.setValue('a', None)
     self.assertIsNone(session.value('a'))
     self.assertIsNone(session.value('a', 'foo'))
     self.assertIs(session.hasValue('a'), True)
     session.delValue('a')
     self.assertRaises(KeyError, session.value, 'a')
     self.assertRaises(KeyError, session.delValue, 'a')
     self.assertIs(session.hasValue('a'), False)
     session.setValue('a', 'foo')
     self.assertEqual(session.value('a'), 'foo')
     self.assertEqual(session.value('a', None), 'foo')
     self.assertIs(session.hasValue('a'), True)
     session.setValue('b', 'bar')
     self.assertEqual(session.value('a'), 'foo')
     self.assertEqual(session.value('b'), 'bar')
     self.assertIs(session.hasValue('b'), True)
     self.assertIsInstance(session.values(), dict)
     self.assertEqual(session.values(), {'a': 'foo', 'b': 'bar'})
コード例 #2
0
 def testDirectAccess(self):
     transaction = Transaction()
     session = Session(transaction, 'test')
     with self.assertRaises(KeyError):
         session['a']  # pylint: disable=pointless-statement
     self.assertNotIn('a', session)
     session['a'] = 'foo'
     self.assertEqual(session['a'], 'foo')
     self.assertIn('a', session)
     self.assertEqual(session.value('a'), 'foo')
     self.assertTrue(session.hasValue('a'))
     del session['a']
     with self.assertRaises(KeyError):
         session['a']  # pylint: disable=pointless-statement
     self.assertNotIn('a', session)
     self.assertFalse(session.hasValue('a'))