def get_new_projects_datas(datas_len):
    db = HandleDB()
    while True:
        datas = __generator_string(datas_len)
        count = db.get_count(
            'SELECT * FROM tb_projects WHERE name="{}"'.format(datas))
        if count == 0:
            db.close()
            return datas
def get_new_username(username_len):
    db = HandleDB()
    while True:
        username = __generator_string(username_len)
        count = db.get_count(
            'select * from auth_user where username="******"'.format(username))
        if count == 0:
            db.close()
            return username
def get_new_interfaces_name(name_len):
    db = HandleDB()
    while True:
        interface_name = __generator_string(name_len)
        count = db.get_count(
            'select * from tb_interfaces where `name`="{}"'.format(
                interface_name))
        if count == 0:
            db.close()
            return interface_name
def get_new_email():
    db = HandleDB()
    while True:
        # 1生成
        email = __generator_email()
        # 2校验,有
        count = db.get_count(
            'select * from auth_user where email="{}"'.format(email))
        if count == 0:  # 如果email没有在数据库查到。表示是未注册的email。
            db.close()
            return email
@Time    :   2020/8/3 17:55

@Desc    :

'''
import unittest
import json
from ddt import ddt, data
from Common.handle_logger import myLogger
from TestDatas.excel_data_obtain import test_register_datas
from Common.handle_requests import set_request
from Common.handle_mysql import HandleDB
from Common.handle_case_relpace_data import replace_mark_with_data
from Common.handle_random_username_email_password import get_new_username, get_password, get_new_email

db = HandleDB()
REPLACE_USERNAME_MARK = "#username#"
REPLACE_PASSWORD_MARK = "#password#"
REPLACE_EMAIL_MARK = "#email#"
REPLACE_ID_MARK = "#id#"

@ddt
class TestRegister(unittest.TestCase):
    @classmethod
    def setUpClass(cls) -> None:
        myLogger.info("==================注册模块接口测试开始==================")

    def setUp(self) -> None:
        myLogger.info("==================接口用例执行开始==================")

    @data(*test_register_datas)
def get_old_project_id():
    db = HandleDB()
    all_project_id = db.select_all_data(
        'select id from tb_projects group by id')
    old_project_id = all_project_id[-1]["id"] + 1
    return old_project_id  # all_project_id
def get_new_project_id():
    db = HandleDB()
    all_project_id = db.select_all_data(
        'select id from tb_projects group by id')
    return random.choice(all_project_id)['id']
def get_old_interfaces_name():
    db = HandleDB()
    all_interfaces_name = db.select_all_data(
        "select `name` from tb_interfaces group by `name`")
    return random.choice(all_interfaces_name)['name']