3 ACCOUNT_FILE = 'bank.pck'
10 f = open(ACCOUNT_FILE)
14 self.bank = pickle.load(f)
15 self.sanity_check(self.bank)
19 def sanity_check_user(self, user):
20 wanted_fields = ['balance']
22 if wanted_fields.has_key(f):
24 if not isinstance(user['balance'], tuple):
26 if len(user['balance']) != 2:
28 if not isinstance(user[0], int) or \
29 not isinstance(user[1], int):
34 if len(wanted_fields) != 0:
38 def sanity_check(self, bank):
40 if not self.sanity_check_user(u):
45 f = open(ACCOUNT_FILE, 'w')
46 pickle.dump(self.bank, f)
49 def ensure_user_exists(self, username):
50 if self.bank.has_key(username):
52 self.bank[username] = {}
53 self.bank[username]['balance'] = (0,0)
55 def get_balance(self, username):
56 if self.bank.has_key(username):
57 return self.bank['username']['balance']
60 def add_amount(self, username, amount):
61 ensure_user_exists(username)
62 self.bank['username']['balance'][0] += amount[0]
63 self.bank['username']['balance'][1] += amount[1]