Exemplo n.º 1
0
class BaseTestCase(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        print('\n', '-' * 20, 'begin class', cls)

    @classmethod
    def tearDownClass(cls):
        print('\n', '-' * 20, 'end class', cls)

    def __init__(self, *args):
        unittest.TestCase.__init__(self, *args)

    def setUp(self):
        self.log('.' * 20, 'begin test', self)
        self.set_up_mocks()
        self.set_up_managers()
        self.set_up_trans()

    def set_up_mocks(self):
        self.trans = mock.MockTrans(admin_users=admin_users)
        self.app = self.trans.app

    def set_up_managers(self):
        self.user_mgr = UserManager(self.app)

    def set_up_trans(self):
        self.admin_user = self.user_mgr.create(self.trans,
                                               email=admin_email,
                                               username='******',
                                               password=default_password)
        self.trans.set_user(self.admin_user)
        self.trans.set_history(None)

    def tearDown(self):
        self.log('.' * 20, 'end test', self, '\n')

    def log(self, *args, **kwargs):
        print(*args, **kwargs)

    # ---- additional test types
    def assertKeys(self, obj, key_list):
        self.assertEqual(sorted(obj.keys()), sorted(key_list))

    def assertHasKeys(self, obj, key_list):
        for key in key_list:
            if key not in obj:
                self.fail('Missing key: ' + key)
        else:
            self.assertTrue(True, 'keys found in object')
Exemplo n.º 2
0
class BaseTestCase( unittest.TestCase ):

    @classmethod
    def setUpClass( cls ):
        print( '\n', '-' * 20, 'begin class', cls )

    @classmethod
    def tearDownClass( cls ):
        print( '\n', '-' * 20, 'end class', cls )

    def __init__( self, *args ):
        unittest.TestCase.__init__( self, *args )

    def setUp( self ):
        self.log( '.' * 20, 'begin test', self )
        self.set_up_mocks()
        self.set_up_managers()
        self.set_up_trans()

    def set_up_mocks( self ):
        self.trans = mock.MockTrans( admin_users=admin_users )
        self.app = self.trans.app

    def set_up_managers( self ):
        self.user_mgr = UserManager( self.app )

    def set_up_trans( self ):
        self.admin_user = self.user_mgr.create( self.trans,
            email=admin_email, username='******', password=default_password )
        self.trans.set_user( self.admin_user )
        self.trans.set_history( None )

    def tearDown( self ):
        self.log( '.' * 20, 'end test', self, '\n' )

    def log( self, *args, **kwargs ):
        print( *args, **kwargs )

    # ---- additional test types
    def assertKeys( self, obj, key_list ):
        self.assertEqual( sorted( obj.keys() ), sorted( key_list ) )

    def assertHasKeys( self, obj, key_list ):
        for key in key_list:
            if key not in obj:
                self.fail( 'Missing key: ' + key )
        else:
            self.assertTrue( True, 'keys found in object' )
Exemplo n.º 3
0
class BaseTestCase(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        print('\n', '-' * 20, 'begin class', cls)

    @classmethod
    def tearDownClass(cls):
        print('\n', '-' * 20, 'end class', cls)

    def __init__(self, *args):
        unittest.TestCase.__init__(self, *args)

    def setUp(self):
        self.log('.' * 20, 'begin test', self)
        self.set_up_mocks()
        self.set_up_managers()
        self.set_up_trans()

    def set_up_mocks(self):
        self.trans = mock.MockTrans(admin_users=admin_users)
        self.app = self.trans.app

    def set_up_managers(self):
        self.user_mgr = UserManager(self.app)

    def set_up_trans(self):
        self.admin_user = self.user_mgr.create(self.trans,
                                               email=admin_email,
                                               username='******',
                                               password=default_password)
        self.trans.set_user(self.admin_user)
        self.trans.set_history(None)

    def tearDown(self):
        self.log('.' * 20, 'end test', self, '\n')

    def log(self, *args, **kwargs):
        print(*args, **kwargs)
Exemplo n.º 4
0
class BaseTestCase(test_utils.unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        print('\n', '-' * 20, 'begin class', cls)

    @classmethod
    def tearDownClass(cls):
        print('\n', '-' * 20, 'end class', cls)

    def __init__(self, *args):
        test_utils.unittest.TestCase.__init__(self, *args)

    def setUp(self):
        self.log('.' * 20, 'begin test', self)
        self.set_up_mocks()
        self.set_up_managers()
        self.set_up_trans()

    def set_up_mocks(self):
        self.trans = galaxy_mock.MockTrans(admin_users=admin_users)
        self.app = self.trans.app

    def set_up_managers(self):
        self.user_manager = UserManager(self.app)

    def set_up_trans(self):
        self.admin_user = self.user_manager.create(email=admin_email,
                                                   username='******',
                                                   password=default_password)
        self.trans.set_user(self.admin_user)
        self.trans.set_history(None)

    def tearDown(self):
        self.log('.' * 20, 'end test', self, '\n')

    def log(self, *args, **kwargs):
        print(*args, **kwargs)

    # ---- additional test types
    TYPES_NEEDING_NO_SERIALIZERS = (basestring, bool, type(None), int, float)

    def assertKeys(self, obj, key_list):
        self.assertEqual(sorted(obj.keys()), sorted(key_list))

    def assertHasKeys(self, obj, key_list):
        for key in key_list:
            if key not in obj:
                self.fail('Missing key: ' + key)
        else:
            self.assertTrue(True, 'keys found in object')

    def assertNullableBasestring(self, item):
        if not isinstance(item, (basestring, type(None))):
            self.fail('Non-nullable basestring: ' + str(type(item)))
        # TODO: len mod 8 and hex re
        self.assertTrue(True, 'is nullable basestring: ' + str(item))

    def assertEncodedId(self, item):
        if not isinstance(item, basestring):
            self.fail('Non-string: ' + str(type(item)))
        # TODO: len mod 8 and hex re
        self.assertTrue(True, 'is id: ' + item)

    def assertNullableEncodedId(self, item):
        if item is None:
            self.assertTrue(True, 'nullable id is None')
        else:
            self.assertEncodedId(item)

    def assertDate(self, item):
        if not isinstance(item, basestring):
            self.fail('Non-string: ' + str(type(item)))
        # TODO: no great way to parse this fully (w/o python-dateutil)
        # TODO: re?
        self.assertTrue(True, 'is date: ' + item)

    def assertUUID(self, item):
        if not isinstance(item, basestring):
            self.fail('Non-string: ' + str(type(item)))
        # TODO: re for d4d76d69-80d4-4ed7-80c7-211ebcc1a358
        self.assertTrue(True, 'is uuid: ' + item)

    def assertORMFilter(self, item, msg=None):
        if not isinstance(item, sqlalchemy.sql.elements.BinaryExpression):
            self.fail('Not an orm filter: ' + str(type(item)))
        self.assertTrue(True, msg or ('is an orm filter: ' + str(item)))

    def assertFnFilter(self, item, msg=None):
        if not item or not callable(item):
            self.fail('Not a fn filter: ' + str(type(item)))
        self.assertTrue(True, msg or ('is a fn filter: ' + str(item)))

    def assertIsJsonifyable(self, item):
        # TODO: use galaxy's override
        self.assertIsInstance(json.dumps(item), basestring)
Exemplo n.º 5
0
class BaseTestCase( test_utils.unittest.TestCase ):

    @classmethod
    def setUpClass( cls ):
        print( '\n', '-' * 20, 'begin class', cls )

    @classmethod
    def tearDownClass( cls ):
        print( '\n', '-' * 20, 'end class', cls )

    def __init__( self, *args ):
        test_utils.unittest.TestCase.__init__( self, *args )

    def setUp( self ):
        self.log( '.' * 20, 'begin test', self )
        self.set_up_mocks()
        self.set_up_managers()
        self.set_up_trans()

    def set_up_mocks( self ):
        self.trans = galaxy_mock.MockTrans( admin_users=admin_users )
        self.app = self.trans.app

    def set_up_managers( self ):
        self.user_manager = UserManager( self.app )

    def set_up_trans( self ):
        self.admin_user = self.user_manager.create( email=admin_email, username='******', password=default_password )
        self.trans.set_user( self.admin_user )
        self.trans.set_history( None )

    def tearDown( self ):
        self.log( '.' * 20, 'end test', self, '\n' )

    def log( self, *args, **kwargs ):
        print( *args, **kwargs )

    # ---- additional test types
    TYPES_NEEDING_NO_SERIALIZERS = ( basestring, bool, type( None ), int, float )

    def assertKeys( self, obj, key_list ):
        self.assertEqual( sorted( obj.keys() ), sorted( key_list ) )

    def assertHasKeys( self, obj, key_list ):
        for key in key_list:
            if key not in obj:
                self.fail( 'Missing key: ' + key )
        else:
            self.assertTrue( True, 'keys found in object' )

    def assertNullableBasestring( self, item ):
        if not isinstance( item, ( basestring, type( None ) ) ):
            self.fail( 'Non-nullable basestring: ' + str( type( item ) ) )
        # TODO: len mod 8 and hex re
        self.assertTrue( True, 'is nullable basestring: ' + str( item ) )

    def assertEncodedId( self, item ):
        if not isinstance( item, basestring ):
            self.fail( 'Non-string: ' + str( type( item ) ) )
        # TODO: len mod 8 and hex re
        self.assertTrue( True, 'is id: ' + item )

    def assertNullableEncodedId( self, item ):
        if item is None:
            self.assertTrue( True, 'nullable id is None' )
        else:
            self.assertEncodedId( item )

    def assertDate( self, item ):
        if not isinstance( item, basestring ):
            self.fail( 'Non-string: ' + str( type( item ) ) )
        # TODO: no great way to parse this fully (w/o python-dateutil)
        # TODO: re?
        self.assertTrue( True, 'is date: ' + item )

    def assertUUID( self, item ):
        if not isinstance( item, basestring ):
            self.fail( 'Non-string: ' + str( type( item ) ) )
        # TODO: re for d4d76d69-80d4-4ed7-80c7-211ebcc1a358
        self.assertTrue( True, 'is uuid: ' + item )

    def assertORMFilter( self, item, msg=None ):
        if not isinstance( item, sqlalchemy.sql.elements.BinaryExpression ):
            self.fail( 'Not an orm filter: ' + str( type( item ) ) )
        self.assertTrue( True, msg or ( 'is an orm filter: ' + str( item ) ) )

    def assertFnFilter( self, item, msg=None ):
        if not item or not callable( item ):
            self.fail( 'Not a fn filter: ' + str( type( item ) ) )
        self.assertTrue( True, msg or ( 'is a fn filter: ' + str( item ) ) )

    def assertIsJsonifyable( self, item ):
        # TODO: use galaxy's override
        self.assertIsInstance( json.dumps( item ), basestring )