コード例 #1
0
ファイル: bank_test.py プロジェクト: blocur/pgmain
    def test_get_account_balance(self):
        bank = Bank()

        account1 = Account('001', 50)
        bank.add_account(account1)

        self.assertEqual(bank.get_account_balance('001'), 50)
コード例 #2
0
ファイル: bank_test.py プロジェクト: dmbandola/Bank_Repo
    def test_add_account(self):
        bank = Bank()
        account_1 = Account(001, 50)
        account_2 = Account(002, 100)

        bank.add_account(account_1)
        bank.add_account(account_2)
        self.assertEqual(len(bank.accounts), 2)
コード例 #3
0
ファイル: bank_test.py プロジェクト: anobilisgorse/CSC185
	def test_deposit(self):
		bank = Bank()

		account_1 = Account(001, 50)

		bank.add_account(account_1)

		self.assertEqual(bank.deposit(001, 50), 100)
		self.assertEqual(bank.deposit(002, 50), 'Account does not exist')
コード例 #4
0
def one_bank(cards):
    """ 은행 fixture 생성 """
    bank1 = Bank("은행1")

    for k, v in cards.items():
        for account, balance in v[1].items():
            bank1.add_account(k, v[0], account, balance)

    return bank1
コード例 #5
0
ファイル: bank_test.py プロジェクト: anobilisgorse/CSC185
	def test_get_account_balance(self):
		bank = Bank()

		account_1 = Account(001, 50)

		bank.add_account(account_1)

		self.assertEqual(bank.get_account_balance(001), 50)
		self.assertEqual(bank.get_account_balance(002), 'Account does not exist')
コード例 #6
0
ファイル: bank_test.py プロジェクト: anobilisgorse/CSC185
	def test_withdraw(self):
		bank = Bank()

		account_1 = Account(001, 50)

		bank.add_account(account_1)

		self.assertEqual(bank.withdraw(001, 50), 0)
		self.assertEqual(bank.withdraw(001, 100), 'Insufficient balance')
		self.assertEqual(bank.withdraw(002, 50), 'Account does not exist')
コード例 #7
0
    def test_add_account(self):
        bank = Bank()

        account_1 = Account(001, 50)
        account_2 = Account(002, 100)

        bank.add_account(account_1)
        bank.add_account(account_2)

        self.assertEqual(len(bank.accounts), 2)
コード例 #8
0
ファイル: bank_test.py プロジェクト: blocur/pgmain
    def test_add_account(self):
        bank = Bank()

        account1 = Account('001', 20)
        account2 = Account('002', 80)

        bank.add_account(account1)
        bank.add_account(account2)

        self.assertEqual(len(bank.accounts), 2)
コード例 #9
0
 def test_bug_fix(self):
     """
     Testing to see if student has addressed security flaw.
     """
     # stdout = sys.stdout
     # sys.stdout = io.StringIO()
     print("\n\nTESTING SECURITY BUG SCENARIO:")
     hsbc = Bank("HSBC")
     hsbc.add_account("Han")
     hsbc.deposit("Han", 200)
     hsbc.withdraw("Han", 100)
     test0 = hsbc.withdraw("Han", -1000)
     test1 = hsbc.check_balance("Han")
     print("SECURITY BUG SCENARIO COMPLETE. TEST RESULT:")
     self.assertFalse(test0)
     self.assertEqual(test1, 100)
コード例 #10
0
 def test_transfer0(self):
     """
     Test simple transfer that should be successful
     """
     # stdout = sys.stdout
     # sys.stdout = io.StringIO()
     print("\n\nTESTING TRANSFER SCENARIO 0:")
     hsbc = Bank("HSBC")
     hsbc.add_account("Han")
     hsbc.deposit("Han", 200)
     hsbc.add_account("Proctor")
     test0 = hsbc.transfer("Han", "Proctor", 100)
     test1 = hsbc.check_balance("Han")
     test2 = hsbc.check_balance("Proctor")
     print("TRANSFER SCENARIO 0 COMPLETE. TEST RESULT:")
     self.assertTrue(test0)
     self.assertEqual(test1, 100)
     self.assertEqual(test2, 100)
コード例 #11
0
 def test_transfer4(self):
     """
     Edge cases: transfer to same account (either return true or false but should not increment account)
     """
     # stdout = sys.stdout
     # sys.stdout = io.StringIO()
     print("\n\nTESTING TRANSFER SCENARIO 4:")
     hsbc = Bank("HSBC")
     hsbc.add_account("Han")
     hsbc.deposit("Han", 200)
     hsbc.add_account("Proctor")
     test0 = hsbc.transfer("Han", "Proctor", 100)
     test1 = hsbc.check_balance("Han")
     test2 = hsbc.check_balance("Proctor")
     hsbc.transfer("Han", "Han", 100)
     test3 = hsbc.check_balance("Han")
     print("TRANSFER SCENARIO 4 COMPLETE. TEST RESULT:")
     self.assertTrue(test0)
     self.assertEqual(test1, 100)
     self.assertEqual(test2, 100)
     self.assertEqual(test3, 100)
コード例 #12
0
 def test_transfer2(self):
     """
     Test transfer that should be unsuccessful due to non-existent transfer_from_acct
     """
     # stdout = sys.stdout
     # sys.stdout = io.StringIO()
     print("\n\nTESTING TRANSFER SCENARIO 2:")
     hsbc = Bank("HSBC")
     hsbc.add_account("Han")
     hsbc.deposit("Han", 200)
     hsbc.add_account("Proctor")
     test0 = hsbc.transfer("Han", "Proctor", 100)
     test1 = hsbc.check_balance("Han")
     test2 = hsbc.check_balance("Proctor")
     test3 = hsbc.transfer("nope", "Proctor", 100)
     test4 = hsbc.check_balance("Han")
     test5 = hsbc.check_balance("Proctor")
     print("TRANSFER SCENARIO 2 COMPLETE. TEST RESULT:")
     self.assertTrue(test0)
     self.assertEqual(test1, 100)
     self.assertEqual(test2, 100)
     self.assertFalse(test3)
     self.assertEqual(test4, 100)
     self.assertEqual(test5, 100)
コード例 #13
0
ファイル: bank_app.py プロジェクト: ecinauce/INC-Compliance
#!/usr/bin/env python
"""Figgis Diggis"""

from flask import Flask, render_template, request
from bank import Bank
from account import Account

APP = Flask(__name__, template_folder='templates')
BANK = Bank()

@APP.route('/')
def hello_world():
    """Figgis diggis"""
    account_number = request.args.get('account_number')
    balance = BANK.get_account_balance(account_number)
    return render_template('index.html', balance=balance)

if __name__ == '__main__':
    import cProfile
    ACCOUNT = Account('1111', 50)
    BANK.add_account(ACCOUNT)
    cProfile.run('APP.run(debug=True)', sort='time')
コード例 #14
0
"""An example of how banks and accounts can work together to create an ecomony.

In this example, we only need to import Bank, because the Bank will take care of
its own accounts. (If you have ever had a bank account, you know that you can't
interact with the account directly. Transactions go through the bank.)
"""

from bank import Bank

hsbc = Bank("HSBC")
sc = Bank("Standard Chartered")

hsbc.add_account("Wolf")
hsbc.add_account("Han")
hsbc.deposit("Wolf", 110)
hsbc.check_balance("Han")
hsbc.deposit("Han", 240)

for amount in range(10):
    if (hsbc.withdraw("Han", amount*10)):
        hsbc.deposit("Wolf", amount*10)
コード例 #15
0
ファイル: bank_app.py プロジェクト: bitNomad/Testing-Python
from flask import Flask, render_template, request
from bank import Bank
from account import Account

app = Flask(__name__)
BANK = Bank()


@app.route("/")
def hello_world():
    account_number = request.args.get("account_number")
    balance = BANK.get_account_balance(account_number)
    return render_template("index.html", balance=balance)


def main():
    account = Account("1111", 50)  # pylint: disable=C0103
    BANK.add_account(account)
    app.run(debug=True)


if __name__ == "__main__":
    account = Account("1111", 50)
    BANK.add_account(account)
    app.run(debug=True)
コード例 #16
0
ファイル: bank_app.py プロジェクト: AjackTi/python
from flask import Flask, render_template, request
from bank import Bank
from account import Account

app = Flask(__name__)
BANK = Bank()


@app.route('/')
def hello_world():
    account_number = request.args.get('account_number')
    balance = BANK.get_account_balance(account_number)
    return render_template('index.html', balance=balance)


def main():
    account = Account('1111', 50)  #pylint: disable=C0103
    BANK.add_account(account)
    app.run(debug=True)


if __name__ == '__main__':
    import cProfile

    account = Account('1111', 50)
    BANK.add_account(account)
    cProfile.run('app.run(debug=True)')
コード例 #17
0
class ClientThread(threading.Thread):
    def __init__(self, clientAddress, clientsocket):
        threading.Thread.__init__(self)
        self.csocket = clientsocket
        print("nova conexao: ", clientAddress)
        self.sinc = threading.Lock()
        self.bank = Bank()

    def run(self):
        print("Connected de :", clientAddress)
        print('run')
        '''
		DESCRIPTION:
			função criada para enviar e receber dados entre o cliente e servidor
		'''
        test = 1

        while (test != 0):

            dados = self.csocket.recv(1024).decode()
            message = dados.split('π∛')

            if message[0] == 'add_client':
                c = Client(message[1], message[2], message[3])
                if self.bank.get_client(message[3]) is False:
                    a = Account(message[4], c, message[5], message[6], '1000')
                    if self.bank.get_account(message[4]) is False:
                        self.bank.add_client(c)
                        self.bank.add_account(a)

                        print('Conta Criada Com Sucesso!')
                        self.csocket.send('True'.encode())
                    else:
                        print('Número de Conta Em Uso!')
                        self.csocket.send('False1'.encode())
                else:
                    print('CPF Em Uso!')
                    self.csocket.send('False2'.encode())

            elif message[0] == 'authenticated':  # Logar
                authenticated = self.bank.login(message[1], message[2])
                if authenticated is True:
                    print('Login Realizado Sucesso')
                    self.csocket.send('True'.encode())
                else:
                    print('Login Não Realizado!')
                    self.csocket.send('False'.encode())

            elif message[
                    0] == 'menuName':  # Mostrar o nome do usuario na tela de menu
                self.csocket.send(str(self.bank.nameAndSurname()).encode())

            elif message[
                    0] == 'menuBalance':  # Mostrar o saldo do usuario na tela de menu
                self.csocket.send(str(self.bank.menuBalance()).encode())

            elif message[0] == 'withdraw':  # Sacar
                self.sinc.acquire()
                account = self.bank.withdraw(message[1])
                if account == 'True':
                    self.csocket.send('True'.encode())
                    self.sinc.release()
                elif account == 'Negativo':
                    self.csocket.send('Negativo'.encode())
                    self.sinc.release()
                elif account == 'Indisponível':
                    self.csocket.send('Indisponível'.encode())
                    self.sinc.release()

            elif message[0] == 'deposit':  # Depositar
                self.sinc.acquire()
                account = self.bank.deposit(message[1])
                if account == 'True':
                    self.csocket.send('True'.encode())
                    self.sinc.release()
                elif account == 'Negativo':
                    self.csocket.send('Negativo'.encode())
                    self.sinc.release()

            elif message[0] == 'transfer':  # Transferir
                self.sinc.acquire()
                account = self.bank.transfer(message[1], message[2])
                if account == 'True':
                    self.csocket.send('True'.encode())
                    self.sinc.release()
                elif account == 'False':
                    self.csocket.send('False'.encode())
                    self.sinc.release()
                elif account == 'Negativo':
                    self.csocket.send('Negativo'.encode())
                    self.sinc.release()
                elif account == 'Inválido':
                    self.csocket.send('Inválido'.encode())
                    self.sinc.release()

            elif message[0] == 'extract':  # Extrato
                # account = self.bank.get_account_2()
                # extracts = account.extract.display_extract()
                # print('Tirou Extrato!')
                self.csocket.send(''.encode())

            elif message[0] == 'backLogin':
                self.bank.sairApp()
                self.csocket.send('True'.encode())

    def servClose(self):
        '''
		DESCRIPTION:
			Utilizado para fechar o servidor
		'''

        self.servSocket.close()
        print("Server finalizado.")