def createBank(number=0): """Saves a bank with the specified number of accounts. Used during testing.""" bank = Bank() for i in xrange(number): bank.add(SavingsAccount("Name" + str(i), str(1000 + i), 100.00)) bank.save("bank.dat")
def fetchBankList(self): banks = [] baseUrl = "http://www.nbcb.com.cn/xyk/thtghd/index%s.shtml" for page in range(1, self.getPageRange()): url = None if page == 1: url = baseUrl % "" else: url = baseUrl % "_" + str(page) soup = self.getSoup(url) if not soup: break for a in soup.find("div", class_="newslist").find_all("a", class_=""): b = Bank() b.url = "http://www.nbcb.com.cn" + a["href"].encode("utf-8") title = soup_util.getStrings(a) m = re.match(r"\[(.*)\]", title) if m: b.city = m.group(1) b.title = re.sub(r"\[(.*)\]|【(.*)】", "", title) banks.append(b) return banks
def fetchBankList(self): banks = [] baseUrl = "http://www.bankofshanghai.com/servlet/ServletGate?op=Forward&cur_page=MorePage&target=more&systemModule=1104&cid=110404&page=%d&menuId=&navigation=-%20%25D2%25F8%25D0%25D0%25BF%25A8%25D2%25B5%25CE%25F1%25B6%25AF%25CC%25AC" for p in range(1, self.getPageRange()): url = ( "http://www.bankofshanghai.com/servlet/ServletGate?op=Forward&cur_page=MorePage&target=more&systemModule=1104&cid=110404&page=" + str(p) + "&menuId=&navigation=-%20%25D2%25F8%25D0%25D0%25BF%25A8%25D2%25B5%25CE%25F1%25B6%25AF%25CC%25AC" ) soup = self.getSoup(url) if not soup or self.isSoupEquals(soup, self.prevSoup): break self.prevSoup = soup for td in soup.find_all("td", bgcolor="#F5F5F5", width="71%"): b = Bank() a = td.find("a") if not a: continue b.url = "http://www.bankofshanghai.com/" + a["href"].encode("utf-8") b.title = a["title"].encode("utf-8") banks.append(b) return banks
def test_mixed_addition(self): five_bucks: Expression = Money.dollar(5) ten_franc: Expression = Money.franc(10) bank = Bank() bank.add_rate("CHF", "USD", 2) result = bank.reduce(five_bucks.plus(ten_franc), "USD") self.assertEqual(Money.dollar(10), result)
def fetchBankList(self): banks = []; baseUrl = "http://creditcard.pingan.com/cms-tmplt/creditcard/searchPreferentialActivity.do?type=&city=shenzhen¤tPage=%d"; for page in range(1, self.getPageRange()): url = baseUrl % page; soup = self.getSoup(url); if not soup: break; lis = soup.find_all("tr", class_="item"); if len(lis) == 0: break; for l in lis: b = Bank(); a = l.find("a"); title = a["title"].encode("utf-8"); m = re.match(r"\[(.*)\]", title); if m: b.city = m.group(1); b.title = re.sub(r"【.*】|\[.*\]", "", title); b.url = "http://creditcard.pingan.com" + a["href"].encode("utf-8"); ds = l.contents[-2].string.encode("utf-8"); b.endDate = date_parser.parseDashLineStyle(ds); banks.append(b); return banks;
def test_get_account_balance(self): bank = Bank() account1 = Account('001', 50) bank.add_account(account1) self.assertEqual(bank.get_account_balance('001'), 50)
def fetchBankList(self): banks = []; baseUrls = ["http://xyk.cebbank.com/home/activities/category/a_region_dd/list%d.htm","http://xyk.cebbank.com/home/activities/category/a_life_cycle/list%d.htm",]; print baseUrls; for bu in baseUrls: for page in range(1, self.getPageRange()): ##url = "http://xyk.cebbank.com/home/activities/category/a_life_cycle/list%d.htm" % page; url = bu % page; soup = self.getSoup(url); if not self.isValidSoup(soup): break; lis = soup.find("ul", class_="th_list_ul").find_all("div", class_="floatleft"); for l in lis: b = Bank(); a = l.find("a"); b.url = "http://xyk.cebbank.com" + a["href"].encode("utf-8"); title = a.string.encode("utf-8").strip(); m = re.match(r"(.*?)((.*))", title); if m: b.title = m.group(1); b.city = m.group(2); else: b.title = title; banks.append(b); return banks;
class BankTestSuite(unittest.TestCase): def setUp(self): self.bank = Bank(0.00) def test_customer_creation(self): customer_1 = Customer('abc') assert self.bank.enroll_customer(customer_1, 150.00) == True assert self.bank.customers['abc'] == 150.00 assert self.bank.balance == 150.00 def test_customer_creation_zero_bal(self): customer_1 = Customer('petyr') assert self.bank.enroll_customer(customer_1, 000.00) == True assert self.bank.balance == 0.00 def test_customer_creation_negative_bal(self): customer_1 = Customer('petyr') assert self.bank.enroll_customer(customer_1, -00.01) == False assert self.bank.balance == 0.00 assert self.bank.customers == {} def test_customer_multiple_deposits(self): customer_1 = Customer('abc') customer_2 = Customer('das') customer_3 = Customer('jjk') assert self.bank.enroll_customer(customer_1, 50.00) == True assert self.bank.enroll_customer(customer_2, 50.00) == True assert self.bank.enroll_customer(customer_3, 50.00) == True assert len(self.bank.customers.keys()) == 3
def fetchBankList(self): prefUrls = [ "http://creditcard.hxb.com.cn/hotnews/index.jsp?cid=12347700871250001", "http://creditcard.hxb.com.cn/hotnews/index.jsp?cid=12347701281290003" ] banks = [] for prefUrl in prefUrls: for page in range(0, self.getPageRange()): url = prefUrl + "&page_count=30&page_start=%d" % (page * 5) soup = self.getSoup(url) if not self.isValidSoup(soup): break lis = soup.find_all("div", id="rm_lcd") for l in lis: b = Bank() a = l.find("a") b.url = "http://creditcard.hxb.com.cn/hotnews/" + a[ "href"].encode("utf-8") b.title = a["title"].encode("utf-8").strip() h6 = l.find("h6").string if h6 != None: m = re.match("\[.*至(.*)\]", h6.encode("utf-8")) if m != None: b.endDate = date_parser.parseDashLineStyle( m.group(1)) banks.append(b) return banks
def setUp(self): self.bank_id = 1 self.newBank = Bank(self.bank_id) self.USER_ID = 3 self.SECOND_USER_ID = 2 self.PRODUCT_ID = 5 self.PRODUCT_ID_2 = 7
def fetchBankList(self): banks = [] #print self.getEndDateByUrl("http://www.abchina.com/cn/CreditCard/Promotions/BusinessActivity/201306/t20130609_352254.htm"); for page in range(0, self.getPageRange()): soup = None if page == 0: soup = self.getSoup( "http://www.abchina.com/cn/PublicPlate/ABCPromotion/default.htm" ) else: soup = self.getSoup( "http://www.abchina.com/cn/PublicPlate/ABCPromotion/default_%d.htm" % (page, )) if not self.isValidSoup(soup): break lis = soup.find_all("li", class_="DotLi100") for l in lis: b = Bank() a = l.find("a") b.url = "http://www.abchina.com/cn/PersonalServices/Promotions/" + a[ "href"].encode("utf-8") b.title = a.string.encode("utf-8") b.endDate = self.getEndDateByUrl(b.url) banks.append(b) return banks
def fetchBankList(self): prefUrls = ["http://creditcard.hxb.com.cn/hotnews/index.jsp?cid=12347700871250001", "http://creditcard.hxb.com.cn/hotnews/index.jsp?cid=12347701281290003"]; banks = []; for prefUrl in prefUrls: for page in range(0, self.getPageRange()): url = prefUrl + "&page_count=30&page_start=%d" % (page*5); soup = self.getSoup(url); if not self.isValidSoup(soup): break; lis = soup.find_all("div", id="rm_lcd"); for l in lis: b = Bank(); a = l.find("a"); b.url = "http://creditcard.hxb.com.cn/hotnews/" + a["href"].encode("utf-8"); b.title = a["title"].encode("utf-8").strip(); h6 = l.find("h6").string; if h6 != None: m = re.match("\[.*至(.*)\]", h6.encode("utf-8")); if m != None: b.endDate = date_parser.parseDashLineStyle(m.group(1)); banks.append(b); return banks;
def fetchBankList(self): banks = []; baseUrl = "http://www.nbcb.com.cn/xyk/thtghd/index%s.shtml"; for page in range(1, self.getPageRange()): url = None; if page == 1: url = baseUrl % ""; else: url = baseUrl % "_" + str(page); soup = self.getSoup(url); if not soup: break; for a in soup.find("div", class_="newslist").find_all("a", class_=""): b = Bank(); b.url = "http://www.nbcb.com.cn" + a["href"].encode("utf-8"); title = soup_util.getStrings(a); m = re.match(r"\[(.*)\]", title); if m: b.city = m.group(1); b.title = re.sub(r"\[(.*)\]|【(.*)】", "", title); banks.append(b); return banks;
def test_checking_account(): bank = Bank() checkingAccount = Account(CHECKING) bill = Customer("Bill").openAccount(checkingAccount) bank.addCustomer(bill) checkingAccount.deposit(100.0) assert_equals(bank.totalInterestPaid(), 0.1)
def test_mixed_addition(self): five_bucks = MoneyFactory.dollar(5) ten_francs = MoneyFactory.franc(10) bank = Bank() bank.add_rate('CHF', 'USD', 2) result = bank.reduce(five_bucks.plus(ten_francs), 'USD') eq_(MoneyFactory.dollar(10), result)
def createCard(self): idCard = input("请输入您的身份证号:") #验证是否存在该用户 bankSys = Bank() user = bankSys.usersDict.get(idCard) if not user: #用户不存在,需要创建用户 name = input("请输入您的姓名:") phone = input("请输入您的手机号:") user = User(name, idCard, phone) # 存入系统 bankSys.usersDict[idCard] = user #开卡 #设置密码 passwd1 = input("请设置密码:") #验证密码 if self.inputPasswd(passwd1): print("三次密码验证错误,开卡失败") return money = float(input("输入预存款:")) cardId = self.getCardId() card = Card(cardId,passwd1,money) user.cardsDict[cardId] = card print("开卡成功!请牢记卡号:%s"%(cardId))
def test_transfer(): """Test transfer method in Account class.""" p1 = Person('Jack', 'Jackson', 19) p2 = Person('Anna', 'Dark', 194) p3 = Person('Igor', 'Smirnov', 33) p4 = Person('Nana', 'Banana', 44) b1 = Bank('NotSwedBank') b2 = Bank('CoolerThanLHV') b3 = Bank('NotYourSEB') p1_acc = Account(100, p1, b1) p2_acc = Account(25, p2, b2) p3_acc = Account(300, p3, b3) p4_acc = Account(0, p4, b3) with pytest.raises(TransactionError): assert p2_acc.transfer(100500, p1_acc) """transaction1 = Transaction(5, datetime.date.today(), p2_acc, p1_acc, False) transaction2 = Transaction(10, datetime.date.today(), p3_acc, p2_acc, False)""" # different banks transfer p2_acc.transfer(5, p1_acc) assert p2_acc.transactions == p1_acc.transactions == b1.transactions == b2.transactions # transaction repr tests for different bank operations expected = f'(5 €) {p2} -> {p1}' assert p2_acc.transactions[0].__repr__() == expected # same bank transfer p3_acc.transfer(10, p4_acc) assert p3_acc.transactions == p4_acc.transactions == b3.transactions
def setUp(self): self.bank_id = 1 self.bank = Bank(bank_id=self.bank_id) self.USER_ID = random.randint(1, 10) self.ACCOUNT_ID = random.randint(1, 10) self.INVESTMENT_ID = random.randint(11, 20) self.account = self.bank.makeAccount(self.USER_ID, self.ACCOUNT_ID)
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)
def test_sum_times(self): five_bucks = MoneyFactory.dollar(5) ten_francs = MoneyFactory.franc(10) bank = Bank() bank.add_rate('CHF', 'USD', 2) sum_ = Sum(five_bucks, ten_francs).times(2) result = bank.reduce(sum_, 'USD') eq_(MoneyFactory.dollar(20), result)
def test_sum_plus_money(self): five_bucks = MoneyFactory.dollar(5) ten_francs = MoneyFactory.franc(10) bank = Bank() bank.add_rate('CHF', 'USD', 2) sum_ = Sum(five_bucks, ten_francs).plus(five_bucks) result = bank.reduce(sum_, 'USD') eq_(MoneyFactory.dollar(15), result)
def testBank(self,number = 0): '''Returns a bank with the specified number of accounts and/or the accounts loaded from the specified file name.''' bank = Bank() for i in xrange(number): bank.add(SavingsAccount('Name' + str(i + 1),str(1000 + i),100.00)) return bank
def test_observer(): bank = Bank() atm_registry = ATMRegistry() atm = atm_registry.get('usd') bank.add_atm(atm) bank.update = mock.Mock() atm.withdraw(100) assert bank.update.called == True
def test_sum_times(self): five_bucks: Expression = Money.dollar(5) ten_franc: Expression = Money.franc(10) bank = Bank() bank.add_rate("CHF", "USD", 2) cul_sum = Sum(five_bucks, ten_franc).times(2) result = bank.reduce(cul_sum, "USD") self.assertEqual(Money.dollar(20), result)
def setUp(self): self.bank_id = 1 self.bank = Bank(bank_id=self.bank_id) self.USER_ID = random.randint(1, 10) self.ACCOUNT_ID = random.randint(1, 10) self.CREDIT_ID = random.randint(11, 20) self.account = self.bank.makeAccount(self.USER_ID, self.ACCOUNT_ID) self._number_of_installment = 12
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')
def main(fileName = None): """Creates the bank with the optional file name, wraps the window around it, and opens the window. Saves the bank when the window closes.""" bank = Bank(fileName) print(bank) manager = BankManager(bank) manager.mainloop() bank.save()
class DebitCard(Payment): def __init__(self): self._bank = Bank() def charge(self): card = input("Enter your card # :>> ") self._bank.set_card(card) return self._bank.charge()
def test_bank(timelines=None): timelines = timelines if timelines == None: newTimelines = Timelines() timelines = newTimelines.get_test_timelines() bank = Bank(timelines) bank.print() print("Debug: Bank-") print('Bank: PASSED')
def setUp(self): self._bank = Bank() self._bank.addRate('CHF', 'USD', 2) self._five_dollars = Money.dollar(5) self._ten_dollars = Money.dollar(10) self._fifteen_dollars = Money.dollar(15) self._five_francs = Money.franc(5) self._ten_francs = Money.franc(10) self._thirty_francs = Money.franc(30)
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
def test_simple_addition(self): """ 足し算テスト :return: """ five = Money.dollar(5) cul_sum = five.plus(five) bank = Bank() reduced = bank.reduce(cul_sum, "USD") self.assertEqual(Money.dollar(10), reduced)
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)
def test_account(): """Test account class.""" person1 = Person("Ellina", "Gedrojets", 18) person2 = Person("Robert", "Soidla", 19) bank1 = Bank("Swed") bank2 = Bank("LHV") acc1 = Account(20, person1, bank1) acc2 = Account(100, person2, bank2) assert len(acc1.number) == 20 assert acc2._balance == 100
def create_client(fin: bank.Bank): """Create a card (client)""" user = client.Client() fin.update_db(user) print('\nYour card has been created') print('Your card number:') print(user.card_number) print('Your card PIN:') print(user.pin) print()
def getBankList(whereDict, city="all"): conn = getConnection() c = conn.cursor() where = buildWhereClause(whereDict) if city and city != "all": where += " and ct_name = '%s'" % city c.execute( "SELECT * FROM " + BankTable.TABLE_NAME + " LEFT OUTER JOIN " + " (SELECT _id AS ct_id, name AS ct_name FROM city) " + " ON ct_id == " + BankTable.COL_CITY_ID + " " + where + "ORDER BY _id DESC", list(whereDict.viewvalues())) conn.commit() banks = [] for row in c.fetchall(): bank = Bank() bank.name = row[BankTable.COL_NAME] bank.title = row[BankTable.COL_TITLE] bank.fetchTime = row[BankTable.COL_FETCH_TIME] bank.accepted = row[BankTable.COL_ACCEPTED] bank.url = row[BankTable.COL_URL] bank.id = row[BankTable.COL_ID] city = row["ct_name"] if city: bank.city = city banks.append(bank) return banks
def setUp(self): self.bank = Bank("Seguritas") self._id1 = "18.375.852-2" self.name1 = "John Dupre" self.password1 = 2345 self._id2 = "13.432.113-k" self.name2 = "Emma Cashter" self.password2 = 5912 self.bank.add_user(self._id1, self.name1, self.password1) self.bank.add_user(self._id2, self.name2, self.password2) self.atm = ATM(self.bank)
def parseInner(self, url): banks = [] soup = self.getSoup(url) for a in soup.find("table", class_="ke-zeroborder").find_all("a"): b = Bank() b.url = a["href"].encode("utf-8") title = a.string.encode("utf-8") b.title = self.removeCity(title) banks.append(b) return banks
def parseInner(self, url): banks = []; soup = self.getSoup(url); for a in soup.find("table", class_="ke-zeroborder").find_all("a"): b = Bank(); b.url = a["href"].encode("utf-8"); title = a.string.encode("utf-8"); b.title = self.removeCity(title); banks.append(b); return banks;
def main(): """Instantiate a Bank and an ATM to run it""" bank = Bank("bank.dat") print("The bank has been loaded.") atm = ATM(bank) print("Running the GUI") atm.mainloop() bank.save() print("The bank has been updated")
def main(): """Instantiate a bank and use it in an ATM.""" bank = Bank("bank.dat") print "The bank has been loaded" atm = ATM(bank) print "Running the GUI" atm.mainloop() bank.save() print "The bank has been updated"
def fetchBankList(self): banks = []; soup = self.getSoup("http://creditcard.gzcb.com.cn/Activities3.html", encoding="gbk"); if not soup: return banks; for a in soup.find("div", class_="active_C").find("ul").find_all("a"): b = Bank(); b.url = "http://creditcard.gzcb.com.cn/" + a["href"].encode("utf-8"); b.title = a.string.encode("utf-8"); banks.append(b); return banks;
def getBankList(whereDict, city="all"): conn = getConnection(); c = conn.cursor(); where = buildWhereClause(whereDict); if city and city != "all": where += " and ct_name = '%s'" % city; c.execute("SELECT * FROM " + BankTable.TABLE_NAME + " LEFT OUTER JOIN " + " (SELECT _id AS ct_id, name AS ct_name FROM city) " + " ON ct_id == " + BankTable.COL_CITY_ID + " " + where + "ORDER BY _id DESC", list(whereDict.viewvalues())) conn.commit(); banks = []; for row in c.fetchall(): bank = Bank(); bank.name = row[BankTable.COL_NAME]; bank.title = row[BankTable.COL_TITLE]; bank.fetchTime = row[BankTable.COL_FETCH_TIME]; bank.accepted = row[BankTable.COL_ACCEPTED]; bank.url = row[BankTable.COL_URL]; bank.id = row[BankTable.COL_ID]; city = row["ct_name"]; if city: bank.city = city; banks.append(bank); return banks;
def fetchBankList(self): banks = []; for page in range(1, self.getPageRange()): f = self.openUrl("http://app.cqrcb.com:81/apply/ajax/AjaxSearch?pageNo=" + str(page) + "&bianliang=0"); if f == None: break; root = json.loads(f.read()); for l in root['merchantList']: b = Bank(); b.url = "http://app.cqrcb.com:81/apply/ShowDetail.action?merid=" + l["merid"].encode("utf-8"); b.title = l["merpro"].encode("utf-8"); banks.append(b); return banks;
def fetchBankList(self): banks = []; url = "http://www.hccb.com.cn/xyk/hdgg/index.shtml#"; soup = self.getSoup(url); if not soup: return banks; for td in soup.find_all("td", class_="newstitle"): b = Bank(); a = td.find("a"); b.url = "http://www.hccb.com.cn" + a["href"].encode("utf-8"); b.title = self.getTitle(b.url); b.endTime = self.getEndTime(b.url); banks.append(b); return banks;
def fetchBankList(self): banks = [] for page in range(1, self.getPageRange()): url = "https://ebank.hkbea.com.cn/batwtp/beaMercQuery.do?turnPageBeginPos=" + str(page) f = self.openUrl(url) if f == None: break soup = BeautifulSoup(f) lis = soup.find_all("div", class_="ldtconts") for l in lis: b = Bank() b.url = url b.title = "".join(l.stripped_strings).encode("utf-8").replace(r"优惠信息:", "") banks.append(b) return banks
def fetchBankList(self): banks = []; for page in range(1, self.getPageRange()): f = self.openUrl("http://www.bankofdl.com/xyk/node_107_" + str(page + 1) + ".htm"); if f == None: break; soup = BeautifulSoup(f); lis = soup.find_all("span", class_="huang12"); for l in lis: l = l.parent; b = Bank(); b.url = "http://www.bankofdl.com/xyk/" + l.find("a")["href"].encode("utf-8"); b.title = "".join(l.stripped_strings).encode("utf-8"); banks.append(b); return banks;
def __init__(self, nickname, port): # over super(BankNode, self).__init__(nickname,port,'bank') thread.start_new_thread(self.node_main, ()) self.bank = Bank() self.cl_list = [] self.addr_list = [] self.mylock = threading.RLock()
def fetchBankList(self): banks = [] url = "http://creditcard.ccb.com/favorable/activelist_%d.html" for p in range(1, FIXED_COUNT): soup = self.getSoup(url % p) if soup == None: break anchors = soup.find_all("a", onclick=re.compile("getHelpInfo")) for anchor in anchors: b = Bank() b.title = anchor["title"].encode("utf-8") b.url = "http://creditcard.ccb.com" + anchor["href"].encode("utf-8") b.endDate = self.getDateByUrl(b.url) banks.append(b) return banks
def fetchBankList(self): banks = []; baseUrl = "http://www.wzbank.cn/credit/newslist/menu_item_id/268/page/%d"; for page in range(1, FIXED_COUNT): url = baseUrl % page; soup = self.getSoup(url); if not soup: break; for l in soup.find("div", class_="all-news-right-wrapper").find("ul").find_all("li"): b = Bank(); a = l.find("a"); b.title = a.string.encode("utf-8"); b.url = "http://www.wzbank.cn" + a["href"].encode("utf-8"); banks.append(b); return banks;
def getBanksByUrl(self, url): banks = []; soup = self.getSoup(url, encoding="gbk"); if not soup: return banks; lis = soup.find_all("a", href=re.compile(r"index\.html")); for l in lis: b = Bank(); b.url = "http://www.spdbccc.com.cn" + l["href"].encode("utf-8"); title = l.string.encode("utf-8"); b.title = re.sub(r"\[.*\](.*)", r"\1", title); m = re.match(r"\[(.*)地区\]", title); if m: b.city = m.group(1); banks.append(b); return banks;
def fetchBankList(self): banks = []; for page in range(1, FIXED_COUNT): url = "http://creditcard.bankcomm.com/bcms/front/activity/ajax/search.do?tab=1&pageNo=%d&isPage=true" % (page,); soup = self.getSoup(url); if not soup: return banks lis = soup.find_all("div", class_="wzms"); for l in lis: b = Bank(); b.url = "http://creditcard.bankcomm.com" + l.next_sibling.next_sibling.find("a", class_="btnMore")["href"].encode("utf-8"); b.title = l.find("td", class_="t2").string.encode("utf-8").strip(); b.endDate = date_parser.parseZhiStyle(l.find("td", class_="t4").string.encode("utf-8").strip()); banks.append(b); return banks;
class TestBankMethods(unittest.TestCase): """ test bank methods """ @classmethod def setUp(self): self.bank = Bank('Bikash') def test_registration(self): """ test customer registration """ customer = self.bank.get_customer_info('Bikash') self.assertEqual('Bikash', customer.name) def test_customer_info(self): """ test customer info """ customer1 = self.bank.get_customer_info('Bikash') customer2 = self.bank.get_customer_info self.assertEqual('Bikash', customer1.name) self.assertRaises(KeyError, customer2, 'Rakesh')
def fetchBankList(self): banks = []; url = "http://www.srcb.com/cardActivity/index.shtml"; soup = self.getSoup(url); if not soup: return banks; for ul in soup.find("div", class_="active_list").find_all("ul"): b = Bank(); a = ul.find("a"); b.url = a["href"].encode("utf-8"); b.title = a["title"].encode("utf-8"); ds = ul.find("span").string.encode("utf-8"); m = re.match(r"至\s+(.*)", ds); if m: b.endTime = date_parser.parseDashLineStyle(m.group(1)); banks.append(b); return banks;
def fetchBankList(self): banks = []; baseUrl = "http://creditcard.cmbc.com.cn/promotioninfo/PromotionInfoList.aspx?page=%d"; for page in range(1, self.getPageRange()): url = baseUrl % page; soup = self.getSoup(url, encoding="gbk"); if not soup or(self.prevSoup and soup.get_text() == self.prevSoup.get_text()): break; self.prevSoup = soup; for l in soup.find_all("li", class_="lb_white"): a = l.find("a"); b = Bank(); b.title = a["title"].encode("utf-8").strip(); b.url = "http://creditcard.cmbc.com.cn/promotioninfo/" + a["href"].encode("utf-8").strip(); b.city = a.next_sibling.string.encode("utf-8").strip(); banks.append(b); return banks;
def fetchBankList(self): baseUrl = "http://www.bankofbeijing.com.cn/creditcard/list%s.html"; banks = []; for page in range(1, self.getPageRange()): url = None; if page == 1: url = baseUrl % ""; else: url = baseUrl % "_" + str(page); soup = self.getSoup(url); if not soup: break; for a in soup.find("ul", class_="f_000_12").find_all("a"): b = Bank(); b.url = "http://www.bankofbeijing.com.cn" + a["href"].encode("utf-8"); b.title = a.string.encode("utf-8"); banks.append(b); return banks;
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')