Exemple #1
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()
        cls.session_manager = session_manager

        # Spawn 4 EWallet Session Workers

        # [ NOTE ]: On cleanup, one of the vacant workers should be reserved if
        #           not passed over worker limit defined in config file to handle new
        #           session token requests

        print('[...]: System action CreateWorker (1)')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker'
        )

        print('[...]: System action CreateWorker (2)')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker'
        )

        print('[...]: System action CreateWorker (3)')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker'
        )

        print('[...]: System action CreateWorker (4)')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker'
        )
Exemple #2
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')

        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action CreateWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')

        cls.session_manager = session_manager

        # Spawn new EWallet Session with no active user or session token
        print('[...]: System action CreateSession\n')
        session = session_manager.session_manager_controller(
            controller='system',
            ctype='action',
            action='new',
            new='session',
            reference='EWallet Session Test')

        print('[ * ]: System Action OpenSockets')
        instruction_set = {
            'controller': 'system',
            'ctype': 'action',
            'action': 'open',
            'opening': 'sockets',
            'in_port': 8080,
            'out_port': 8081,
        }
        print('[ > ] Instruction Set: {}'.format(instruction_set))
        _in_port = cls.session_manager.session_manager_controller(
            **instruction_set)
        print('[ < ] Response: {}'.format(str(_in_port)) + '\n')
Exemple #3
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client', ctype='action', action='request',
            request='client_id'
        )

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client', ctype='action', action='request', request='session_token',
            client_id=client_id['client_id']
        )

        # Create new master user account to acquire
        print('[...]: Client action CreateMaster')
        master = session_manager.session_manager_controller(
            controller='client', ctype='action', action='new', new='master',
            master='account', client_id=client_id['client_id'],
            session_token=session_token['session_token'],
            user_email=cls.user_email_1, user_pass=cls.user_pass_1,
            user_name=cls.user_name_1,
        )

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']
        cls.master = master
Exemple #4
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Request client id for session token request
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWalletSession
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']
        log_file_content = '[ ERROR ]: WTF, I did not expect that to happen...'
        content_bytes = log_file_content.encode('ascii')
        base64_bytes = base64.b64encode(content_bytes)
        base64_message = base64_bytes.decode('ascii')
        cls.base64_log = base64_message
Exemple #5
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Request client id for session token request
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWalletSession
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']
Exemple #6
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action CreateWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')
        cls.session_manager = session_manager
Exemple #7
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']

        print('[...]: Client action CreateMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_3,
            user_pass=cls.user_pass_3,
            user_email=cls.user_email_3,
            user_phone=cls.user_phone_3,
            user_alias=cls.user_alias_3,
            company=cls.user_company_3,
            address=cls.user_address_3,
        )

        print('[...]: Master action AccountLogin')
        login = cls.session_manager.session_manager_controller(
            controller='master',
            ctype='action',
            action='login',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_email=cls.user_email_3,
            user_pass=cls.user_pass_3,
        )
Exemple #8
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action CreateWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')

        # Create datetime object 30 hours in the past
        past_date = datetime.datetime.now() - datetime.timedelta(days=31)

        # EWallet Server users
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'],
            expiration_date=past_date)

        # Create new master user account to acquire
        print('[...]: Client action CreateMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=client_id['client_id'],
            session_token=session_token['session_token'],
            user_email=cls.user_email_1,
            user_pass=cls.user_pass_1,
            user_name=cls.user_name_1,
            to_unlink=True,
            to_unlink_timestamp=past_date,
        )

        # Set global values
        cls.session_manager = session_manager
        cls.worker = worker
        cls.client_id = client_id
        cls.session_token = session_token
        cls.master = master
Exemple #9
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action CreateWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')

        # EWallet Server users
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Create new master user account to acquire
        print('[...]: Client action CreateMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=client_id['client_id'],
            session_token=session_token['session_token'],
            user_email=cls.user_email_1,
            user_pass=cls.user_pass_1,
            user_name=cls.user_name_1,
        )

        # Set global values
        cls.session_manager = session_manager
        cls.worker = worker
        cls.client_id = client_id
        cls.session_token = session_token
        cls.master = master
Exemple #10
0
    def setUpClass(cls):
        print('[ + ]: Prerequisits:')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action NewWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')
        cls.session_manager = session_manager
        # Spawn new EWallet Session with no active user or session token
        print('[...]: System action NewSession')
        session = session_manager.session_manager_controller(
            controller='system',
            ctype='action',
            action='new',
            new='session',
            reference='EWallet Session Test')
Exemple #11
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action CreateWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')
        cls.session_manager = session_manager

        # Create datetime object 30 hours in the past
        past_date = datetime.datetime.now() - datetime.timedelta(hours=30)

        # Spawn 3 client ids to create 3 different session tokens with. Mocks 3

        # EWallet Server users
        print('[...]: Client action RequestClientID (1)')
        client_id1 = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id',
            expires_on=past_date)

        print('[...]: Client action RequestClientID (2)')
        client_id2 = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id',
            expires_on=past_date)

        print('[...]: Client action RequestClientID (3)')
        client_id3 = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id',
            expires_on=past_date)

        cls.client_id = client_id1['client_id']
Exemple #12
0
    def setUpClass(cls):
        print('[ + ]: Prerequisits:')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID (1)')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken (1)')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID (2)')
        client_id2 = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken (2)')
        session_token2 = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id2['client_id'])

        # Set global values
        cls.session_manager = session_manager
Exemple #13
0
    def setUpClass(cls):
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Set global values
        cls.session_manager = session_manager
Exemple #14
0
    def setUpClass(cls):
        print('[ + ]: Prerequisits -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']

        print('[...]: Client action NewMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_3,
            user_pass=cls.user_pass_3,
            user_email=cls.user_email_3,
            user_phone=cls.user_phone_3,
            user_alias=cls.user_alias_3,
            company=cls.user_company_3,
            address=cls.user_address_3,
        )

        print('[...]: Client action AcquireMaster')
        acquire = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='acquire',
            acquire='master',
            master=cls.user_email_3,
            key=cls.master_key_code,
            client_id=client_id['client_id'],
            session_token=session_token['session_token'])

        # Create new user account to use as SystemCore account mockup
        print('[...]: User action CreateAccount (1)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_1,
            user_pass=cls.user_pass_1,
            user_email=cls.user_email_1)

        # Create new user account to user as Client account mockup
        print('[...]: User action CreateAccount (2)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_2,
            user_pass=cls.user_pass_2,
            user_email=cls.user_email_2)

        # Login to new user account
        print('[...]: User action AccountLogin (2)')
        login = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='login',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_pass=cls.user_pass_2,
            user_email=cls.user_email_2)

        # Supply EWallet with credits to have available for transfer
        print('[...]: User action SupplyCredits')
        supply = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='supply',
            supply='credits',
            client_id=cls.client_id,
            session_token=cls.session_token,
            currency='RON',
            credits=100,
            cost=4.7,
            notes='EWallet user action SupplyCredits notes added by '
            'EWSC functional test suit.')
Exemple #15
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Create first EWallet Session Worker
        print('[...]: System action CreateWorker')
        worker = session_manager.session_manager_controller(
            controller='system', ctype='action', action='new', new='worker')

        # Create datetime object 30 hours in the past
        past_date = datetime.datetime.now() - datetime.timedelta(days=31)

        # EWallet Server users
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'],
            expiration_date=past_date)

        # Create new master user account to acquire
        print('[...]: Client action CreateMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=client_id['client_id'],
            session_token=session_token['session_token'],
            user_name=cls.user_name_3,
            user_pass=cls.user_pass_3,
            user_email=cls.user_email_3,
            user_phone=cls.user_phone_3,
            user_alias=cls.user_alias_3,
            company=cls.user_company_3,
            address=cls.user_address_3,
        )

        print('[...]: Client action AcquireMaster')
        acquire = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='acquire',
            acquire='master',
            master=cls.user_email_3,
            key=cls.master_key_code,
            client_id=client_id['client_id'],
            session_token=session_token['session_token'])

        print('[...]: User action CreateAccount')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=client_id['client_id'],
            session_token=session_token['session_token'],
            user_name=cls.user_name_1,
            user_pass=cls.user_pass_1,
            user_email=cls.user_email_1)

        print('[...]: System action FreezeMaster')
        freeze_master = session_manager.session_manager_controller(
            controller='system',
            ctype='action',
            action='freeze',
            freeze='master',
            master_id=master['account_data']['id'],
        )

        # Set global values
        cls.session_manager = session_manager
        cls.worker = worker
        cls.client_id = client_id
        cls.session_token = session_token
        cls.master = master
Exemple #16
0
    def setUpClass(cls):
        print('[ + ]: Prerequisits -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']

        print('[...]: Client action NewMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_3,
            user_pass=cls.user_pass_3,
            user_email=cls.user_email_3,
            user_phone=cls.user_phone_3,
            user_alias=cls.user_alias_3,
            company=cls.user_company_3,
            address=cls.user_address_3,
        )

        print('[...]: Client action AcquireMaster')
        acquire = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='acquire',
            acquire='master',
            master=cls.user_email_3,
            key=cls.master_key_code,
            client_id=client_id['client_id'],
            session_token=session_token['session_token'])

        # Create new user account to use as SystemCore account mockup
        print('[...]: User action CreateAccount (1)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_1,
            user_pass=cls.user_pass_1,
            user_email=cls.user_email_1)

        # Create new user account to user as Client account mockup
        print('[...]: User action CreateAccount (2)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_2,
            user_pass=cls.user_pass_2,
            user_email=cls.user_email_2)

        # Login to new user account
        print('[...]: User action AccountLogin (2)')
        login = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='login',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_email=cls.user_email_2,
            user_pass=cls.user_pass_2,
        )

        # Add new contact record to populate active contact list
        print('[...]: User action NewContactRecord')
        add_contact_record = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='contact',
            contact='record',
            client_id=cls.client_id,
            session_token=cls.session_token,
            contact_list=2,
            user_name='Test User Name',
            user_email=cls.user_email_1,
            user_phone='123454321',
            user_reference='Test Mockup',
            notes='Notes added by functional test',
        )
Exemple #17
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']

        print('[...]: Client action NewMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_3,
            user_pass=cls.user_pass_3,
            user_email=cls.user_email_3,
            user_phone=cls.user_phone_3,
            user_alias=cls.user_alias_3,
            company=cls.user_company_3,
            address=cls.user_address_3,
        )

        print('[...]: Client action AcquireMaster')
        acquire = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='acquire',
            acquire='master',
            master=cls.user_email_3,
            key=cls.master_key_code,
            client_id=client_id['client_id'],
            session_token=session_token['session_token'])

        # Create new user account to use as SystemCore account mockup
        print('[...]: User action CreateAccount (1)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_1,
            user_pass=cls.user_pass_1,
            user_email=cls.user_email_1)

        # Create new user account to user as Client account mockup
        print('[...]: User action CreateAccount (2)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_2,
            user_pass=cls.user_pass_2,
            user_email=cls.user_email_2)

        # Login to new user account
        print('[...]: User action AccountLogin (2)')
        login = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='login',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_email=cls.user_email_2,
            user_pass=cls.user_pass_2,
        )

        # Create conversion sheet for action unlink
        print('[...]: User action CreateConversionSheet')
        create = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='conversion',
            conversion='list',
            client_id=cls.client_id,
            session_token=cls.session_token)
Exemple #18
0
    def setUpClass(cls):
        print('[ + ]: Prerequisites -')
        # Create new EWallet Session Manager instance
        session_manager = manager.EWalletSessionManager()

        # Generate new Client ID to be able to request a Session Token
        print('[...]: Client action RequestClientID')
        client_id = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='client_id')

        # Request a Session Token to be able to operate within a EWallet Session
        print('[...]: Client action RequestSessionToken')
        session_token = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='request',
            request='session_token',
            client_id=client_id['client_id'])

        # Set global values
        cls.session_manager = session_manager
        cls.client_id = client_id['client_id']
        cls.session_token = session_token['session_token']

        print('[...]: Client action NewMaster')
        master = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='master',
            master='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_3,
            user_pass=cls.user_pass_3,
            user_email=cls.user_email_3,
            user_phone=cls.user_phone_3,
            user_alias=cls.user_alias_3,
            company=cls.user_company_3,
            address=cls.user_address_3,
        )

        print('[...]: Client action AcquireMaster')
        acquire = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='acquire',
            acquire='master',
            master=cls.user_email_3,
            key=cls.master_key_code,
            client_id=client_id['client_id'],
            session_token=session_token['session_token'])

        # Create new user account to use as SystemCore account mockup
        print('[...]: User action CreateAccount (1)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_1,
            user_pass=cls.user_pass_1,
            user_email=cls.user_email_1)

        # Create new user account to user as Client account mockup
        print('[...]: User action CreateAccount (1)')
        new_account = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='new',
            new='account',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_name=cls.user_name_2,
            user_pass=cls.user_pass_2,
            user_email=cls.user_email_2)

        # Login to new user account
        print('[...]: User action AccountLogin (2)')
        login = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='login',
            client_id=cls.client_id,
            session_token=cls.session_token,
            user_email=cls.user_email_2,
            user_pass=cls.user_pass_2,
        )
        # Supply credits to EWallet
        print('[...]: User action SupplyCredits')
        supply = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='supply',
            supply='credits',
            client_id=cls.client_id,
            session_token=cls.session_token,
            currency='RON',
            credits=100,
            cost=4.7,
            notes=
            'EWallet user action Supply notes added by functional test suit.')

        # Convert EWallet credits to Credit Clock minutes
        print('[...]: User action ConvertCreditsToClock')
        convert = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='convert',
            convert='credits2clock',
            client_id=cls.client_id,
            session_token=cls.session_token,
            credits=20,
            notes=
            'EWallet user action Convert Credits To Clock notes added by functional test suit.'
        )

        # Start EWallet Credit Clock Timer
        print('[...]: User action StartClockTimer')
        start = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='start',
            start='clock_timer',
            client_id=cls.client_id,
            session_token=cls.session_token)

        # Pause EWallet Credit Clock Timer
        print('[...]: User action PauseClockTimer')
        pause = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='pause',
            pause='clock_timer',
            client_id=cls.client_id,
            session_token=cls.session_token)

        # Resume EWallet Credit Clock Timer
        print('[...]: User action ResumeClockTimer')
        resume = session_manager.session_manager_controller(
            controller='client',
            ctype='action',
            action='resume',
            resume='clock_timer',
            client_id=cls.client_id,
            session_token=cls.session_token)