示例#1
0
def test_init(tmp_path):
    path_srv_root = os.path.join(str(tmp_path), user_folder_name)
    os.environ["JUPYTER_SERVER_ROOT"] = str(path_srv_root)
    logger = Logger()
    path_naas = os.path.join(path_srv_root, '.naas', 'jobs.json')
    uid = str(uuid.uuid4())
    jobs = Jobs(logger, clean, init_data)
    assert len(jobs.list(uid)) == 0
示例#2
0
async def test_delete(tmp_path):
    path_srv_root = os.path.join(str(tmp_path), user_folder_name)
    os.environ["JUPYTER_SERVER_ROOT"] = path_srv_root
    logger = Logger()
    uid = str(uuid.uuid4())
    jobs = Jobs(logger, clean, init_data)
    path =  os.path.join(os.getcwd(), 'test_delete.py')
    target_type = t_notebook
    value = user_folder_name
    params = {}
    runTime = 0
    await jobs.update(uid, path, target_type, value, params, t_add, runTime)
    assert len(jobs.list(uid)) == 1
    await jobs.update(uid, path, target_type, value, params, t_delete, runTime)
    assert len(jobs.list(uid)) == 0
示例#3
0
async def test_init(tmp_path):
    path_srv_root = os.path.join(str(tmp_path), user_folder_name)
    os.environ["JUPYTER_SERVER_ROOT"] = str(path_srv_root)
    logger = Logger()
    uid = str(uuid.uuid4())
    jobs = Jobs(logger, clean, init_data)
    list_job = await jobs.list(uid)
    assert len(list_job) == 0
示例#4
0
async def test_add(tmp_path):
    path_srv_root = os.path.join(str(tmp_path), user_folder_name)
    os.environ["JUPYTER_SERVER_ROOT"] = path_srv_root
    logger = Logger()
    uid = str(uuid.uuid4())
    jobs = Jobs(logger, clean, init_data)
    path =  os.path.join(os.getcwd(), 'test_add.py')
    target_type = t_notebook
    value = user_folder_name
    params = {}
    runTime = 0
    await jobs.update(uid, path, target_type, value, params, t_add, runTime)
    assert len(jobs.list(uid)) == 1
    data = jobs.find_by_path(uid, path, target_type)
    assert data.get('value') == value
    assert data['params'] == params
    assert data['lastRun'] == runTime
示例#5
0
async def test_scheduler(tmp_path, event_loop):
    recur = "* * * * *"
    test_notebook = "tests/demo/demo_scheduler.ipynb"
    cur_path = os.path.join(os.getcwd(), test_notebook)
    new_path = os.path.join(tmp_path, test_notebook)
    os.makedirs(os.path.dirname(new_path))
    logger = Logger()
    notebooks = Notebooks(logger)
    jobs = Jobs(logger, True, [])
    scheduler = Scheduler(logger, jobs, notebooks, event_loop)
    uid = str(uuid.uuid4())
    copy2(cur_path, new_path)
    job = {
        "type": t_scheduler,
        "path": new_path,
        "params": {},
        "value": recur,
        "status": t_add,
    }
    await jobs.update(
        uid,
        job["path"],
        job["type"],
        job["value"],
        job["params"],
        job["status"],
    )
    resp_json = await jobs.list(uid)
    assert len(resp_json) == 1
    res_job = resp_json[0]
    assert res_job.get("type") == t_scheduler
    assert res_job.get("path") == new_path
    assert res_job.get("value") == recur
    assert res_job.get("status") == t_add
    await scheduler.start(test_mode=True)
    resp_json = await jobs.list(uid)
    assert len(resp_json) == 1
    res_job = resp_json[0]
    assert res_job.get("type") == t_scheduler
    assert res_job.get("path") == new_path
    assert res_job.get("value") == recur
    assert res_job.get("status") == t_health
示例#6
0
async def test_update(tmp_path):
    path_srv_root = os.path.join(str(tmp_path), user_folder_name)
    os.environ["JUPYTER_SERVER_ROOT"] = path_srv_root
    logger = Logger()
    uid = str(uuid.uuid4())
    jobs = Jobs(logger, clean, init_data)
    path = os.path.join(os.getcwd(), "test_update.py")
    target_type = t_notebook
    value = user_folder_name
    new_value = "value_changed"
    params = {}
    run_time = 0
    await jobs.update(uid, path, target_type, value, params, t_add, run_time)
    list_job = await jobs.list(uid)
    assert len(list_job) == 1
    await jobs.update(uid, path, target_type, new_value, params, t_update, run_time)
    list_job = await jobs.list(uid)
    assert len(list_job) == 1
    data = await jobs.find_by_path(uid, path, target_type)
    assert data["value"] == new_value
    await jobs.update(uid, path, target_type, value, params, t_delete, run_time)
    list_job = await jobs.list(uid)
    assert len(list_job) == 0