def setUpTestData(cls): # Create admin user from different source cls.bob_credentials = [ 'admin_bob', '*****@*****.**', "7u35ITpAss" ] cls.root_credentials = [ 'admin_root', '*****@*****.**', "7u35ITpAss" ] cls.create_admins() # Login the users cls.c_admin_root = cls.login_client(cls.root_credentials) cls.c_admin_bob = cls.login_client(cls.bob_credentials) # Create records Userdata.objects.create(owner=cls.user_bob, first_name='Alice', last_name='Doe', iban=IBAN.generate( country_code='DE', bank_code='37040044', account_code='0532013000').formatted) Userdata.objects.create(owner=cls.user_root, first_name='Bob', last_name='Bob', iban=IBAN.generate( country_code='DE', bank_code='37040044', account_code='0532013000').formatted)
def onGen(): def onCopy(): clip = tk.Tk() clip.withdraw() clip.clipboard_clear() clip.clipboard_append(iban_get) clip.destroy() m_box.showinfo('Success', 'iBAN Copied Successfully') get_country = country_code.get() get_bank = bank_code.get() get_account = account_code.get() if get_country != '' and get_account != '' and get_bank != '': iban_get = IBAN.generate(get_country, bank_code=get_bank, account_code=get_account) got_iBan = ttk.Label(root, text=f"Your iBAN is {iban_get}", font="arial 12 bold") got_iBan.grid(row=1, column=0, padx=50, pady=2) btncopy = ttk.Button(root, text="Copy iBAN", command=onCopy) btncopy.grid(row=2, columnspan=3, padx=50, pady=2, ipady=5) m_box.showinfo('Success', 'iBAN Generated Successfully') else: m_box.showerror('Error', 'Please Fill Every Boxes Carefully !')
def generate_data(self): if not self.canary_queued: self.canary_queued = True return self.CANARY account = random.randint(0, 9999999999) bank = random.choice(DUTCH_BICS) key = IBAN.generate(self.country, bank, str(account)) # data = strgen.StringGenerator('[\d\w]{{{size}}}'.format(size=self.data_size)).render() data = DATA return key, data
def generate_iban_for_bank(self, bank_code: str) -> IBAN: """ Generates an iban for given bank code. :param bank_code: bank code :return: IBAN object """ try: return IBAN.generate(self.country_code, bank_code, self.generate_account_part(bank_code)) except ValueError as e: raise Exception( 'We generated an invalid IBAN. ' 'This means, that probably there is a bug in the mechanism generating IBAN or the library we use. Error: {0}' .format(e))
def generate(request): country_code = request.POST.get('country', 'default') bank_code = request.POST.get('bkcode', 'default') account_code = request.POST.get('accode', 'default') print(country_code) print(bank_code) print(account_code) try: iban = IBAN.generate(country_code, bank_code=bank_code, account_code=account_code) parmas = {'iBAN_Goted':iban,} except ValueError: return render(request, 'error.html') else: return render(request, 'generate.html', parmas)
def test_create_userdata_good_iban(self): """iban's field passes""" first_name = factory.Faker('first_name').generate('') last_name = factory.Faker('last_name').generate('') iban = IBAN.generate(country_code='DE', bank_code='37040044', account_code='0532013000').formatted result = Userdata(first_name=first_name, last_name=last_name, iban=iban, owner=get_user_model().objects.first()) result.full_clean() self.assertTrue(expr=result)
def create_identite(numprenommax, numnommax, numresidencemax, numbanqmax, dataform): idprenom = randint(1, numprenommax) idnom = randint(1, numnommax) idbanque = randint(1, numbanqmax) if 'datenaiss' in dataform: date_naissance = time.strftime( '%Y/%m/%d', time.gmtime(randint(0, int(time.time())))) else: date_naissance = None if 'ville_naissance' in dataform: idvillenaissance = randint(1, numresidencemax) else: idvillenaissance = None if 'adresse' in dataform: idresidence = randint(1, numresidencemax) else: idresidence = None nom, prenom, genre, residence, banq, ville_naissance = get_info( idprenom, idnom, idresidence, idbanque, idvillenaissance) if not (ville_naissance): ville_naissance = None if 'numero_insee' in dataform: num = [] if genre == 'm': num.append('1') else: num.append('2') num.append(str(date_naissance[2:4])) num.append(str(date_naissance[5:7])) num.append(str(ville_naissance[2])) num.append(str(n_len_rand(3))) cle = 97 - (int(''.join(num)) % 97) num.append(str(cle)) numero_insee = str(''.join(num)) else: numero_insee = None if 'idcard' in dataform: mrz = str( TD1CodeGenerator( "ID", "FRA", str(randint(1, 1000000)), date_naissance.replace("/", "")[2:], str.upper(genre)[0], str(date.today() + timedelta(days=5475)).replace("-", "")[2:], "FRA", nom[:4], prenom[:29], "99999999R")).replace('\n', "") else: mrz = None if 'numTel' in dataform: num = ['0', '6'] for i in range(8): num.append(str(randint(0, 9))) numTel = str(''.join(num)) else: numTel = None if 'email' in dataform: email = str(prenom) + "." + str(nom).lower() + "@gmail.com" else: email = None if 'num_carte_banc' in dataform: num_carte_banc = str(credit_card_number()) else: num_carte_banc = None if 'iban' in dataform: compte = str(randint(1, 1000000000000000000)) bank_code = str(randint(10000, 99999)) iban = str( IBAN.generate('FR', bank_code=bank_code, account_code=compte)) else: iban = None return (idnom, idprenom, date_naissance, ville_naissance[0], idresidence, numero_insee, mrz, numTel, num_carte_banc, email, iban, genre, idbanque), ( nom, prenom, date_naissance, ville_naissance[0], residence, numero_insee, mrz, numTel, num_carte_banc, email, iban, genre, )
def test_generate_iban_invalid(components): with pytest.raises(SchwiftyException): IBAN.generate(*components)
def test_generate_iban(components, compact): iban = IBAN.generate(*components) assert iban.compact == compact
def test_generate_iban_invalid(country_code, bank_code, account_code): with pytest.raises(ValueError): IBAN.generate(country_code, bank_code, account_code)
def test_generate_iban_invalid(components): with pytest.raises(ValueError): IBAN.generate(*components)