def main(): OUTPUT_FILE = "TestData.sql" RECORD_COUNT = 1000 START_FROM = 2000 sqlCommands = "" for i in range(START_FROM, RECORD_COUNT + START_FROM): user_id = next(count(i)) user_name = Gimei().name user_birthday = randomDate("1930-1-1", "2010-12-31", '%Y-%m-%d') user_addr = Gimei().address user_tel = randomTel() updated_at = randomDate("2015-6-28 00:00:00", "2016-6-28 00:00:00", '%Y-%m-%d %H:%M:%S') user_roles = random.choice([1, 2, 3]) user_status = random.choice(['INIT', 'ACTV', 'RMVD']) sqlCommands += "VALUES ('{}', '{}', '{}', '{}', '{}', '{}', '{}', {});\n"\ .format(user_id, user_name, user_birthday, user_addr, user_tel, \ user_status, updated_at, user_roles) with open(OUTPUT_FILE, "w") as f: f.write(sqlCommands)
def replace_data(self, records, be_replaced): for record in records: fake = Gimei() if be_replaced.get("first_name"): for table_col_name in be_replaced.get("first_name"): while True: first_name = record.__dict__.get( table_col_name.lower()) if first_name == None or first_name == "": break first_name = fake.name.first.kanji if first_name != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), first_name) if be_replaced.get("last_name"): for table_col_name in be_replaced.get("last_name"): while True: last_name = record.__dict__.get(table_col_name.lower()) if last_name == None or last_name == "": break last_name = fake.name.last.kanji if last_name != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), last_name) if be_replaced.get("first_name_kana"): for table_col_name in be_replaced.get("first_name_kana"): while True: first_name_kana = record.__dict__.get( table_col_name.lower()) if first_name_kana == None or first_name_kana == "": break first_name_kana = fake.name.first.katakana if first_name_kana != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), first_name_kana) if be_replaced.get("last_name_kana"): for table_col_name in be_replaced.get("last_name_kana"): while True: last_name_kana = record.__dict__.get( table_col_name.lower()) if last_name_kana == None or last_name_kana == "": break last_name_kana = fake.name.last.katakana if last_name_kana != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), last_name_kana) # if be_replaced.get("address_pref_tcd"): # for table_col_name in be_replaced.get("address_pref_tcd"): # setattr(record,table_col_name.lower(),'') if be_replaced.get("address_city"): for table_col_name in be_replaced.get("address_city"): while True: address_city = record.__dict__.get( table_col_name.lower()) if address_city == None or address_city == "": break address_city = f.city() if address_city != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), address_city) if be_replaced.get("address_town"): for table_col_name in be_replaced.get("address_town"): while True: address_town = record.__dict__.get( table_col_name.lower()) if address_town == None or address_town == "": break address_town = f.town() if address_town != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), address_town) if be_replaced.get("address_street"): for table_col_name in be_replaced.get("address_street"): while True: address_street = record.__dict__.get( table_col_name.lower()) if address_street == None or address_street == "": break address_street = f.chome() if address_street != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), address_street) if be_replaced.get("zip_code"): for table_col_name in be_replaced.get("zip_code"): while True: zip_code = record.__dict__.get(table_col_name.lower()) if zip_code == None or zip_code == "": break zip_code = f.zipcode() if zip_code != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), zip_code) if be_replaced.get("phone_number"): for table_col_name in be_replaced.get("phone_number"): while True: phone_number = record.__dict__.get( table_col_name.lower()) if phone_number == None or phone_number == "": break phone_number = '000-0000-0000' break setattr(record, table_col_name.lower(), phone_number) if be_replaced.get("fax_number"): for table_col_name in be_replaced.get("fax_number"): setattr(record, table_col_name.lower(), '') if be_replaced.get("name"): for table_col_name in be_replaced.get("name"): while True: name = record.__dict__.get(table_col_name.lower()) if name == None or name == "": break name = Gimei().name.hiragana if name != record.__dict__.get(table_col_name.lower()): break setattr(record, table_col_name.lower(), name) if be_replaced.get("name_kana"): for table_col_name in be_replaced.get("name_kana"): while True: name_kana = record.__dict__.get(table_col_name.lower()) if name_kana == None or name_kana == "": break name_kana = Gimei().name.katakana if name_kana != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), name_kana) if be_replaced.get("mail"): for table_col_name in be_replaced.get("mail"): setattr(record, table_col_name.lower(), '*****@*****.**') if be_replaced.get("my_number"): for table_col_name in be_replaced.get("my_number"): setattr(record, table_col_name.lower(), '') if be_replaced.get("birth_date"): for table_col_name in be_replaced.get("birth_date"): while True: birth_date = record.__dict__.get( table_col_name.lower()) if birth_date == None or birth_date == "": break birth_date = datetime.datetime.now() break setattr(record, table_col_name.lower(), birth_date) if be_replaced.get("birthday"): for table_col_name in be_replaced.get("birthday"): while True: birth_day = record.__dict__.get(table_col_name.lower()) if birth_day == None or birth_day == "": break birth_day = datetime.datetime.now() break setattr(record, table_col_name.lower(), birth_day) if be_replaced.get("insured_number"): for table_col_name in be_replaced.get("insured_number"): while True: insured_number = record.__dict__.get( table_col_name.lower()) if insured_number == None or insured_number == "": break insured_number = f.random_int(12345678, 87654321) if insured_number != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), insured_number) if be_replaced.get("recipient_number"): for table_col_name in be_replaced.get("recipient_number"): while True: recipient_number = record.__dict__.get( table_col_name.lower()) if recipient_number == None or recipient_number == "": break recipient_number = f.random_int(12345678, 87654321) if recipient_number != record.__dict__.get( table_col_name.lower()): break setattr(record, table_col_name.lower(), recipient_number) if be_replaced.get("introducer_information"): for table_col_name in be_replaced.get( "introducer_information"): while True: introducer_information = record.__dict__.get( table_col_name.lower()) if introducer_information == None or introducer_information == "": break introducer_information = fake.name.last.kanji + fake.name.first.kanji break setattr(record, table_col_name.lower(), introducer_information) if be_replaced.get("create_user"): for table_col_name in be_replaced.get("create_user"): while True: create_user = record.__dict__.get( table_col_name.lower()) if create_user == None or create_user == "": break create_user = fake.name.last.kanji + fake.name.first.kanji break setattr(record, table_col_name.lower(), create_user) if be_replaced.get("update_user"): for table_col_name in be_replaced.get("update_user"): while True: update_user = record.__dict__.get( table_col_name.lower()) if update_user == None or update_user == "": break update_user = fake.name.last.kanji + fake.name.first.kanji break setattr(record, table_col_name.lower(), update_user) record.save()
def test_kanji_name_in_data(self): name = Gimei().name assert Name.find_name_by_kanji(name.kanji)
def test_create_name_from_gender(self): name = Gimei('female').name assert name.is_female
def test_katakana_name_in_data(self): name = Gimei().name assert Name.find_name_by_katakana(name.katakana)
def test_hiragana_name_in_data(self): name = Gimei().name assert Name.find_name_by_hiragana(name.hiragana)
def getLastName(lang='ja'): if lang == 'ja': return Gimei().name.last.kanji return ''
from gimei import Gimei name = Gimei().name print(name.kanji) print(name.katakana) print(name.hiragana)
def test_kanji_address_in_data(self): address = Gimei().address assert Address.find_address_by_kanji(address.kanji)
def test_hiragana_address_in_data(self): address = Gimei().address assert Address.find_address_by_hiragana(address.hiragana)