Exemplo n.º 1
0
def test_create_existing_model(meta: MetadataRepository, project: Project,
                               task: Task, model: Model, model2: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id
    model = meta.create_model(model)
    assert model is not None

    model2.task_id = task.id
    model2.name = model.name
    with pytest.raises(ExistingModelError):
        meta.create_model(model2)
Exemplo n.º 2
0
def test_save_updated_existing_model_with_existing_name(
        meta: MetadataRepository, project: Project, task: Task, model: Model,
        model2: Model):
    project = meta.create_project(project)
    task.project = project
    task = meta.create_task(task)

    model.task_id = task.id
    model = meta.create_model(model)

    model2.task_id = task.id
    model2 = meta.create_model(model2)

    model.name = model2.name
    with pytest.raises(ExistingModelError):
        meta.save_model(model)
Exemplo n.º 3
0
def test_update_model_source_is_changed(meta: MetadataRepository,
                                        project: Project, task: Task,
                                        model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id
    saved_model = meta.create_model(model)
    assert saved_model is not None

    id = saved_model.id

    saved_model = update_object_fields(model,
                                       excepted_fields=[
                                           'id', 'wrapper', 'artifact',
                                           'output_meta', 'input_meta',
                                           'requirements', 'transformer',
                                           'task_id'
                                       ])
    saved_model = meta.update_model(saved_model)

    assert id == saved_model.id
    assert model == meta.get_model_by_id(saved_model.id)
    assert model is saved_model
Exemplo n.º 4
0
def test_update_task_is_reference(meta: MetadataRepository, project: Project,
                                  model: Model):
    task_entity = Task("Test Task")
    task_entity.project = meta.create_project(project)
    task = meta.create_task(task_entity)
    assert task is not None

    id = task.id

    model.task_id = task.id
    model = meta.create_model(model)

    task.name = "Test Task 2"
    task.add_model(model)
    task = meta.update_task(task)

    assert id == task.id
    assert "Test Task 2" == task.name
    assert model == task.models.get(model.id)

    task.name = "KEK"
    actual_task = meta.get_task_by_id(task.id)
    assert_objects_equal_except_fields(task,
                                       actual_task,
                                       excepted_fields=['name'])
Exemplo n.º 5
0
def test_push_model(ebnt: Ebonite, model: Model):
    task = ebnt.get_or_create_task("Project", "Task1")
    model.task_id = task.id  # For test purpose
    pushed_model = ebnt.push_model(model)

    assert model.name == pushed_model.name
    assert task.id == pushed_model.task_id
Exemplo n.º 6
0
def test_update_not_existing_model(meta: MetadataRepository, project: Project,
                                   task: Task, model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id

    with pytest.raises(NonExistingModelError):
        meta.update_model(model)
Exemplo n.º 7
0
def test_create_model_source_is_changed(meta: MetadataRepository,
                                        project: Project, task: Task,
                                        model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id
    saved_model = meta.create_model(model)
    assert saved_model is model
Exemplo n.º 8
0
def test_create_model(meta: MetadataRepository, project: Project, task: Task,
                      model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id
    model = meta.create_model(model)
    assert model is not None
    assert model.has_meta_repo
Exemplo n.º 9
0
def test_create_model_is_reference(meta: MetadataRepository, project: Project,
                                   task: Task, model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id
    model = meta.create_model(model)
    assert model is not None

    model.name = "KEK"
    actual_model = meta.get_model_by_id(model.id)
    assert_objects_equal_except_fields(model,
                                       actual_model,
                                       excepted_fields=['name'])

    model.task_id = None
    actual_model = meta.get_model_by_id(model.id)
    assert_objects_equal_except_fields(model,
                                       actual_model,
                                       excepted_fields=['name', 'task_id'])
Exemplo n.º 10
0
def test_save_existing_model(meta: MetadataRepository, project: Project,
                             task: Task, model: Model):
    project = meta.create_project(project)
    task.project = project
    task = meta.create_task(task)

    model.task_id = task.id
    model = meta.create_model(model)

    saved_model = meta.save_model(model)
    assert saved_model.id == model.id
    assert saved_model.task_id == model.task_id
    assert model == meta.get_model_by_id(saved_model.id)
Exemplo n.º 11
0
def test_save_model_is_reference(meta: MetadataRepository, project: Project,
                                 task: Task, model: Model):
    project = meta.create_project(project)
    task.project = project
    task = meta.create_task(task)

    model.task_id = task.id

    saved_model = meta.save_model(model)

    saved_model.name = "KEK"
    actual_model = meta.get_model_by_id(saved_model.id)
    assert_objects_equal_except_fields(saved_model,
                                       actual_model,
                                       excepted_fields=['name'])
Exemplo n.º 12
0
def test_inner_objects_binded(meta: MetadataRepository, project: Project,
                              task: Task, model: Model):
    task.project = meta.create_project(project)
    meta.create_task(task)

    model.task_id = task.id
    model = meta.create_model(model)

    new_project = meta.get_project_by_name(project.name)
    assert new_project.id is not None
    assert new_project.has_meta_repo
    new_task = new_project.tasks(task.name)
    assert new_task.id is not None
    assert new_task.has_meta_repo
    new_model = new_task.models(model.name)
    assert new_model.id is not None
    assert new_model.has_meta_repo
Exemplo n.º 13
0
def test_save_updated_existing_model(meta: MetadataRepository,
                                     project: Project, task: Task,
                                     model: Model):
    project = meta.create_project(project)
    task.project = project
    task = meta.create_task(task)

    model.task_id = task.id
    model = meta.create_model(model)

    model = update_object_fields(model,
                                 excepted_fields=[
                                     'id', 'wrapper', 'artifact',
                                     'output_meta', 'input_meta',
                                     'requirements', 'transformer', 'task_id'
                                 ])

    saved_model = meta.save_model(model)
    assert saved_model == model
    assert model == meta.get_model_by_id(saved_model.id)
Exemplo n.º 14
0
def test_update_model(meta: MetadataRepository, project: Project, task: Task,
                      model: Model):
    task.project = meta.create_project(project)
    task = meta.create_task(task)
    assert task is not None

    model.task_id = task.id
    model = meta.create_model(model)
    assert model is not None

    id = model.id

    model = update_object_fields(model,
                                 excepted_fields=[
                                     'id', 'wrapper', 'artifact',
                                     'requirements', 'wrapper_meta', 'task_id',
                                     'wrapper_obj', 'params'
                                 ])
    model = meta.update_model(model)

    assert id == model.id
    assert model == meta.get_model_by_id(model.id)
    assert model.has_meta_repo