def test_custom_contructor(self):
     """Mapped objects can also have their own constructors."""
     session_mapper(SecretUser, self.users_table)
     test_user = SecretUser(user_id=3, user_name='Falken')
     assert test_user.user_id == 3
     assert test_user.user_name == 'falken'
     assert test_user.password == 'secret'
 def test_contructor(self):
     """Mapped objects have constructor which takes attributes as kw args."""
     session_mapper(User, self.users_table)
     test_user = User(user_id=1, user_name='Falken', password='******')
     assert test_user.user_id == 1
     assert test_user.user_name == 'Falken'
     assert test_user.password == 'Joshua'
 def test_old_contructor(self):
     """Mapped old-style classes should work or give a proper error."""
     try:
         session_mapper(OldUser, self.users_table)
     except ArgumentError:
         pass # if SQLAlchemy doesn't like old-style classes
     else: # otherwise, they should work as well
         test_user = OldUser(user_id=2, user_name='Devine', password='******')
         assert test_user.user_id == 2
         assert test_user.user_name == 'Devine'
         assert test_user.password == 'Ned'
 def test_no_contructor(self):
     """Mapped objects can also have no constructor at all."""
     session_mapper(RawUser, self.users_table, set_kwargs_on_init=False)
     self.assertRaises(TypeError, RawUser,
         user_id=4, user_name='Jonny', password='******')
 def test_query_attribute(self):
     """Object mapped with session-aware mapper have 'query' attribute."""
     session_mapper(User, self.users_table)
     assert hasattr(User, 'query')
     assert hasattr(User.query, 'filter')
 def test_no_autoadd(self):
     """Mapped objects can not be automatically added to session."""
     session_mapper(User, self.users_table, autoadd=False)
     test_user = User(user_id=6, user_name='Barks', password='******')
     assert test_user not in session
 def test_autoadd(self):
     """Mapped objects are automatically added to session."""
     session_mapper(User, self.users_table)
     test_user = User(user_id=5, user_name='Disney', password='******')
     assert test_user in session
 def test_validate(self):
     """Constructor of mapped objects can validate kw args."""
     session_mapper(User, self.users_table, validate=True)
     self.assertRaises(TypeError, User,
         user_id=4, user_name='Falken', nickname='Steve')
 def test_no_validate(self):
     """Constructor of mapped objects does not validate kw args."""
     session_mapper(User, self.users_table)
     test_user = User(user_id=4, user_name='Falken', nickname='Steve')
     assert test_user.nickname == 'Steve'