예제 #1
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)
예제 #2
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
예제 #3
0
def test_update_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

    id = model.id

    model.name = "Test Model 2"
    model = meta.update_model(model)

    assert id == model.id
    assert "Test Model 2" == model.name

    model.name = "KEK"
    actual_model = meta.get_model_by_id(model.id)
    assert_objects_equal_except_fields(model,
                                       actual_model,
                                       excepted_fields=['name'])
예제 #4
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