def test_resource_versions():
    run_config = {
        "resources": {
            "test_resource": {
                "config": {
                    "input_str": "apple"
                },
            },
            "test_resource_no_version": {
                "config": {
                    "input_str": "banana"
                }
            },
        }
    }
    environment_config = EnvironmentConfig.build(
        modes_pipeline,
        run_config=run_config,
        mode="fakemode",
    )

    resource_versions_by_key = resolve_resource_versions(
        environment_config, modes_pipeline.get_mode_definition("fakemode"))

    assert resource_versions_by_key["test_resource"] == join_and_hash(
        resolve_config_version({"config": {
            "input_str": "apple"
        }}), test_resource.version)

    assert resource_versions_by_key["test_resource_no_version"] == None

    assert resource_versions_by_key[
        "test_resource_no_config"] == join_and_hash(join_and_hash(), "42")
示例#2
0
def test_step_versions_with_resources():
    run_config = {"resources": {"test_resource": {"config": {"input_str": "apple"}}}}
    speculative_execution_plan = create_execution_plan(
        versioned_modes_pipeline, run_config=run_config, mode="fakemode"
    )

    versions = speculative_execution_plan.resolve_step_versions()

    solid_def_version = fake_solid_resources_versioned.version
    solid_config_version = resolve_config_version(None)
    resource_versions_by_key = resolve_resource_versions(
        speculative_execution_plan.environment_config,
        speculative_execution_plan.pipeline.get_definition(),
    )
    solid_resources_version = join_and_hash(
        *[
            resource_versions_by_key[resource_key]
            for resource_key in fake_solid_resources_versioned.required_resource_keys
        ]
    )
    solid_version = join_and_hash(solid_def_version, solid_config_version, solid_resources_version)

    step_version = join_and_hash(solid_version)

    assert versions["fake_solid_resources_versioned"] == step_version
示例#3
0
def test_resource_versions():
    run_config = {
        "resources": {
            "test_resource": {
                "config": {"input_str": "apple"},
            },
            "test_resource_no_version": {"config": {"input_str": "banana"}},
        }
    }

    execution_plan = create_execution_plan(modes_pipeline, run_config=run_config, mode="fakemode")

    resource_versions_by_key = resolve_resource_versions(
        execution_plan.environment_config, execution_plan.pipeline.get_definition()
    )

    assert resource_versions_by_key["test_resource"] == join_and_hash(
        resolve_config_version({"input_str": "apple"}), test_resource.version
    )

    assert resource_versions_by_key["test_resource_no_version"] == None

    assert resource_versions_by_key["test_resource_no_config"] == join_and_hash(
        join_and_hash(), "42"
    )
def test_step_versions_with_resources():
    run_config = {"resources": {"test_resource": {"config": {"input_str": "apple"}}}}
    speculative_execution_plan = create_execution_plan(
        versioned_modes_pipeline, run_config=run_config,
    )

    versions = resolve_step_versions_for_test(
        speculative_execution_plan, run_config=run_config, mode="fakemode"
    )

    solid_def_version = fake_solid_resources_versioned.version
    solid_config_version = resolve_config_version(None)
    environment_config = EnvironmentConfig.build(
        versioned_modes_pipeline, mode="fakemode", run_config=run_config
    )
    resource_versions_by_key = resolve_resource_versions(
        environment_config, versioned_modes_pipeline.get_mode_definition("fakemode")
    )
    solid_resources_version = join_and_hash(
        *[
            resource_versions_by_key[resource_key]
            for resource_key in fake_solid_resources_versioned.required_resource_keys
        ]
    )
    solid_version = join_and_hash(solid_def_version, solid_config_version, solid_resources_version)

    step_version = join_and_hash(solid_version)

    assert versions["fake_solid_resources_versioned.compute"] == step_version
示例#5
0
def basic_resource_versions():
    run_config = {
        "resources": {
            "basic_resource": {
                "config": {
                    "input_str": "apple"
                },
            },
            "resource_no_version": {
                "config": {
                    "input_str": "banana"
                }
            },
        }
    }

    resolved_run_config = ResolvedRunConfig.build(modes_pipeline,
                                                  run_config,
                                                  mode="fakemode")

    resource_versions_by_key = resolve_resource_versions(
        resolved_run_config, modes_pipeline)

    assert resource_versions_by_key["basic_resource"] == join_and_hash(
        resolve_config_version({"input_str": "apple"}), basic_resource.version)

    assert resource_versions_by_key["resource_no_version"] == None

    assert resource_versions_by_key["resource_no_config"] == join_and_hash(
        join_and_hash(), "42")
示例#6
0
def test_step_versions_with_resources():
    run_config = {
        "resources": {
            "basic_resource": {
                "config": {
                    "input_str": "apple"
                }
            }
        }
    }
    speculative_execution_plan = create_execution_plan(
        versioned_modes_pipeline, run_config=run_config, mode="fakemode")
    resolved_run_config = ResolvedRunConfig.build(versioned_modes_pipeline,
                                                  run_config=run_config,
                                                  mode="fakemode")

    versions = resolve_step_versions(versioned_modes_pipeline,
                                     speculative_execution_plan,
                                     resolved_run_config)

    solid_def_version = fake_solid_resources_versioned.version
    solid_config_version = resolve_config_version(None)

    resolved_run_config = ResolvedRunConfig.build(versioned_modes_pipeline,
                                                  run_config,
                                                  mode="fakemode")

    resource_versions_by_key = resolve_resource_versions(
        resolved_run_config,
        versioned_modes_pipeline,
    )
    solid_resources_version = join_and_hash(*[
        resource_versions_by_key[resource_key] for resource_key in
        fake_solid_resources_versioned.required_resource_keys
    ])
    solid_version = join_and_hash(solid_def_version, solid_config_version,
                                  solid_resources_version)

    step_version = join_and_hash(solid_version)

    assert versions["fake_solid_resources_versioned"] == step_version