示例#1
0
def test_update_task_with_models(meta: MetadataRepository, project: Project,
                                 task: Task, model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    id = task.id

    model.task = task
    model = meta.create_model(model)
    task.add_model(model)

    task = update_object_fields(task,
                                excepted_fields=['id', 'models', 'project_id'])
    model = update_object_fields(model,
                                 excepted_fields=[
                                     'id', 'wrapper', 'artifact',
                                     'output_meta', 'input_meta',
                                     'requirements', 'transformer', 'task_id'
                                 ])
    updated_task = meta.update_task(task)

    assert id == task.id
    assert updated_task is task
    assert task == meta.get_task_by_id(task.id)
    assert len(task.models) == 1

    assert model.id in task.models
    assert model == meta.get_model_by_id(model.id)
    assert meta.get_model_by_id(model.id).name == 'Test Model2'
    assert task.has_meta_repo
示例#2
0
def test_push_model_with_task_and_task_argument_with_different_project(ebnt: Ebonite, model: Model):
    task = ebnt.get_or_create_task("Project", "Task1")

    task2 = ebnt.get_or_create_task("Project2", "Task1")
    model.task = task2  # For test purpose

    with pytest.raises(ValueError):
        ebnt.push_model(model, task)
示例#3
0
def test_get_models(meta: MetadataRepository, project: Project, task: Task,
                    model: Model):
    task.project = meta.create_project(project)
    created_task = meta.create_task(task)
    model.task = created_task
    created_model = meta.create_model(model)

    actual_models = meta.get_models(created_task)
    assert actual_models == [created_model]
示例#4
0
def test_update_task_source_is_changed(meta: MetadataRepository,
                                       project: Project, task: Task,
                                       model: Model):
    task.project = meta.create_project(project)

    saved_task = meta.create_task(task)
    assert saved_task is task

    id = saved_task.id

    model.task = saved_task
    model = meta.create_model(model)

    saved_task = update_object_fields(
        saved_task, excepted_fields=['id', 'models', 'project_id'])

    saved_task.add_model(model)
    saved_task = meta.update_task(saved_task)

    assert id == saved_task.id
    assert saved_task == meta.get_task_by_id(saved_task.id)
    assert model == saved_task.models.get(model.id)

    assert task is saved_task