コード例 #1
0
    def test_administrators(self):
        self.user = um_utils.user(self.admin, 'quantel@')
        result = um_utils.login(self.user)
        if (result == 0 or result == 1):
            self.user.loggedin = True
        self.assertTrue((result == 0 or result == 1),
                        'Test Failed: User could not log in.')

        # Delete all existing licenses
        db_utils.deleteAllLicenses(self.connection, self.cur)

        for x in range(0, 7):
            # Check user every minute to see if still logged in
            print 'Sleeping for 60 secs.................'
            time.sleep(60)

            # Check that user is still logged in
            if (db_utils.isUserLoggedIn(self.connection, self.cur, self.user)):
                print 'User still logged in after %d minutes' % (x + 1)
            self.assertTrue((db_utils.isUserLoggedIn(self.connection, self.cur,
                                                     self.user)),
                            'Test Failed: User has been logged out')

        print 'Sleeping for 2 secs.................'
        time.sleep(2)
コード例 #2
0
    def test_administrators(self):
        # Empty list to be filled with user objects
        self.users = []
        if (self.maxUsers > 0):
            print 'License is valid!!!!!!'
            print 'License start date should not yet have occured'
            print 'Replace the license in um_utils.py'
        
        maxAdmins = self.maxUsers + 5
        # Get the number of users already logged in
        count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)
    
        print 'Max users allowed: %d' % self.maxUsers
        print 'Max administrators allowed: %d' % maxAdmins
        print 'Number of users already logged in: %d' % count
        print 'Opening browsers........'

        for admin in self.admins:
            # For each administrator, create a user object and add object to users list
            self.users.append(um_utils.user(admin, 'quantel@'))
           
        # Keep trying to log in each of the editors. Once the max number of users have been logged in, no further logins should be allowed.
        for user in self.users:
            result = um_utils.login(user)
            if (result == 0 or result == 1):
                user.loggedin = True 
            count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)
            print '\tNumber of active users (max: %d): %d' % (maxAdmins, count)
            self.assertFalse ((count > maxAdmins), 'Test Failed: Max number of users exceded.')
                
        print 'Sleeping for 2 secs.................'
        time.sleep( 2 )
コード例 #3
0
    def test_managers(self):
        # Empty list to be filled with user objects
        self.users = []  
        
        maxManagers = self.maxUsers + 5
        # Get the number of users already logged in
        count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)
    
        print 'Max users allowed: %d' % self.maxUsers
        print 'Max managers allowed: %d' % maxManagers
        print 'Number of users already logged in: %d' % count
        print 'Opening browsers........'

        for manager in self.managers:
            # For each manager, create a user object and add object to users list
            self.users.append(um_utils.user(manager, 'quantel@'))
           
        # Keep trying to log in each of the editors. Once the max number of users have been logged in, no further logins should be allowed.
        for user in self.users:
            result = um_utils.login(user)
            if (result == 0 or result == 1):
                user.loggedin = True 
            count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)
            print '\tNumber of active users (max: %d): %d' % (maxManagers, count)
            self.assertFalse ((count > maxManagers), 'Test Failed: Max number of users exceded.')
                
        print 'Sleeping for 2 secs.................'
        time.sleep( 2 )
コード例 #4
0
    def test_editors(self):
        # Empty list to be filled with user objects
        self.users = []

        # Get the number of users already logged in
        count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)

        print 'Max users allowed: %d' % self.maxUsers
        print 'Number of users already logged in: %d' % count
        print 'Opening browsers........'

        for editor in self.editors:
            # For each editor, create a user object and add object to users list
            self.users.append(um_utils.user(editor, 'quantel@'))

        # Keep trying to log in each of the editors. If any editor can log in, the test has failed.
        for user in self.users:
            result = um_utils.login(user)
            if (result == 0 or result == 1):
                user.loggedin = True
            self.assertTrue((result > 1),
                            'Test Failed: User successfully logged in.')

        print 'Sleeping for 2 secs.................'
        time.sleep(2)
コード例 #5
0
ファイル: test_login.py プロジェクト: dwjhaines/UMTestSuite
 def test_ten_wrong_passwords(self):
     # Set user password to be incorrect
     self.user.password = '******'
     # Reset failed password count
     db_utils.resetFailedPasswordAttemptCount(self.connection, self.cur, self.user)
     
     for count in range(0, 10):
         # Check that account is not blocked
         self.assertFalse(db_utils.isUserLockedOut(self.connection, self.cur, self.user))
         # Try and log in user.
         result = um_utils.login(self.user)
         lockedout = db_utils.isUserLockedOut(self.connection, self.cur, self.user)
         self.assertTrue(result == 2, 'Wrong error message displayed')
         print 'Attempts = %d  Result = %d  Locked out = %d' % (count + 1, result, lockedout)
     
     # Check that users account is blocked
     print 'User has entered 10 incorrect passwords. Account should be blocked:'
     print 'Locked out = %d' % db_utils.isUserLockedOut(self.connection, self.cur, self.user)
     self.assertTrue(db_utils.isUserLockedOut(self.connection, self.cur, self.user))
     
     # Reset failed password count and unblock user
     print 'Unlocking user account......'
     db_utils.resetFailedPasswordAttemptCount(self.connection, self.cur, self.user)
     db_utils.unBlockUser(self.connection, self.cur, self.user)
     # Check that user has been unlocked
     lockedout = db_utils.isUserLockedOut(self.connection, self.cur, self.user)
     print 'Locked out = %d' % lockedout
コード例 #6
0
ファイル: test_login.py プロジェクト: dwjhaines/UMTestSuite
 def test_login(self):
     # Check that user is not already logged in
     self.assertFalse(db_utils.isUserLoggedIn(self.connection, self.cur, self.user), 'Test not valid. User is already logged in')
     # Try and log in user.
     result = um_utils.login(self.user)
     if (result == 0):
         self.user.loggedin = True 
     self.assertTrue((db_utils.isUserLoggedIn(self.connection, self.cur, self.user)), 'User not logged in' )
      
     print 'Sleeping for 2 secs.................'
     time.sleep( 2 )
コード例 #7
0
    def test_no_valid_license(self):
        # Empty list to be filled with user objects (not used in this test but needed for teardown)
        self.users = []
        # Set up emergency admin user
        self.ea = um_utils.user('emergencyadmin', 'faelj*34#7k89@jkl')
        # No license is installed. Try and log in as emergency admin
        result = um_utils.login(self.ea)
        if (result == 0 or result == 1):
            self.ea.loggedin = True
        self.assertTrue((result == 0), 'Emergency admin unable to log in')

        print 'Sleeping for 2 secs.................'
        time.sleep(2)
コード例 #8
0
    def test_valid_license(self):
        # Install license for five users and set the value of maxUsers
        self.maxUsers = db_utils.addFiveUserLicense(self.connection, self.cur)
        print 'License installed for %d users' % self.maxUsers

        # Empty list to be filled with user objects
        self.users = []
        maxAdmins = self.maxUsers + 5
        print 'Maximum number of administrators = %d' % maxAdmins
        count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)

        print 'Max users allowed: %d' % self.maxUsers
        print 'Max administrators allowed: %d' % maxAdmins
        print 'Number of users already logged in: %d' % count
        print 'Opening browsers........'

        for admin in self.admins:
            # For each administrator, create a user object and add object to users list
            self.users.append(um_utils.user(admin, 'quantel@'))
        # Set up emergency admin user
        self.ea = um_utils.user('emergencyadmin', 'faelj*34#7k89@jkl')

        # Keep logging in users until maxAdmins has been reached.
        for user in self.users:
            result = um_utils.login(user)
            if (result == 0 or result == 1):
                user.loggedin = True
            count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)

        # Try and log in as emergency admin
        print '\tNumber of active users (max: %d): %d' % (maxAdmins, count)
        result = um_utils.login(self.ea)
        if (result == 0 or result == 1):
            self.ea.loggedin = True
        self.assertTrue((result == 0), 'Emergency admin unable to log in')

        print 'Sleeping for 2 secs.................'
        time.sleep(2)
コード例 #9
0
ファイル: test_login.py プロジェクト: dwjhaines/UMTestSuite
    def test_logout(self):      
        # log user in
        um_utils.loginPage(self.user)
        result = um_utils.login(self.user)
        if (result == 0):
            self.user.loggedin = True 
        # Check that user is logged in
        self.assertTrue(db_utils.isUserLoggedIn(self.connection, self.cur, self.user), 'Test not valid. User is not logged in')
        print 'Sleeping for 2 secs.................'
        time.sleep( 2 )
        # Try and log user out.
        um_utils.logout(self.user)
        self.user.loggedin = db_utils.isUserLoggedIn(self.connection, self.cur, self.user)

        # Check user is no longer logged in
        self.assertFalse((db_utils.isUserLoggedIn(self.connection, self.cur, self.user)), 'User is still logged in' )
コード例 #10
0
    def test_editors(self):
        self.user = um_utils.user(self.editor, 'quantel@')
        result = um_utils.login(self.user)
        print 'Result = %d' % result
        if (result == 0 or result == 1):
            self.user.loggedin = True
        self.assertTrue((result == 0 or result == 1),
                        'Test Failed: User could not log in.')

        # Delete all existing licenses
        db_utils.deleteAllLicenses(self.connection, self.cur)

        for x in range(0, 5):
            # Check user every minute to see if still logged in
            print 'Sleeping for 60 secs.................'
            time.sleep(60)

            # Check that user is still logged in
            if (db_utils.isUserLoggedIn(self.connection, self.cur, self.user)):
                print 'User still logged in after %d minutes' % (x + 1)
            self.assertTrue(
                (db_utils.isUserLoggedIn(self.connection, self.cur,
                                         self.user)),
                'Test Failed: User has been logged out after %d minutes' %
                (x + 1))

        # If still logged in after five minutes, wait another 120 seconds and check that user has been logged out
        print 'Sleeping for 120 secs.................'
        time.sleep(120)
        if (db_utils.isUserLoggedIn(self.connection, self.cur,
                                    self.user) == False):
            print 'User has been successfully logged out'

        self.assertFalse(
            db_utils.isUserLoggedIn(self.connection, self.cur, self.user),
            'Test Failed: User has not been logged out after seven minutes')

        print 'Sleeping for 2 secs.................'
        time.sleep(2)
コード例 #11
0
    def test_administrators(self):
        # Empty list to be filled with user objects
        self.users = []
        maxAdmins = self.maxUsers + 5
        print 'Maximum number of administrators = %d' % maxAdmins
        count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)

        print 'Max users allowed: %d' % self.maxUsers
        print 'Max administrators allowed: %d' % maxAdmins
        print 'Number of users already logged in: %d' % count
        print 'Opening browsers........'

        for admin in self.admins:
            # For each administrator, create a user object and add object to users list
            self.users.append(um_utils.user(admin, 'quantel@'))

        # Keep trying to log in each of the editors. Once the max number of users have been logged in, no further logins should be allowed.
        for user in self.users:
            result = um_utils.login(user)
            if (result == 0 or result == 1):
                user.loggedin = True
                self.assertTrue((
                    db_utils.getNumberOfActiveUsers(self.connection,
                                                    self.cur) > 0
                ), 'Test Failed: Check that you are using the correct SQL DB!!!!!!.'
                                )
            count = db_utils.getNumberOfActiveUsers(self.connection, self.cur)
            if (
                    result == 3
            ):  # Maximum number of users are logged in. Check that the number logged in is correct.
                self.assertFalse((count < maxAdmins),
                                 'Test Failed: User should be able to log in.')
            print '\tNumber of active users (max: %d): %d' % (maxAdmins, count)
            self.assertFalse((count > maxAdmins),
                             'Test Failed: Max number of users exceded.')

        print 'Sleeping for 2 secs.................'
        time.sleep(2)