def test_create_single_solid_pipeline_with_alias():
    a_source = define_stub_solid('A_source', [input_set('A_input')])
    stub_solid = define_stub_solid('stub', [{'a_key': 'stubbed_thing'}])
    single_solid_pipeline = PipelineDefinition.create_single_solid_pipeline(
        PipelineDefinition(
            solids=[a_source, create_root_solid('A')],
            dependencies={
                SolidInstance('A', alias='aliased'): {
                    'A_input': DependencyDefinition(a_source.name)
                },
            },
        ),
        'aliased',
        {
            'aliased': {
                'A_input': stub_solid,
            },
        },
    )

    result = execute_pipeline(single_solid_pipeline)
    assert result.success

    expected = [{'a_key': 'stubbed_thing'}, {'A': 'transform_called'}]
    assert result.result_for_solid('aliased').transformed_value() == expected
def test_create_single_solid_pipeline():
    stub_solid = define_stub_solid('stub', [{'a key': 'a value'}])
    single_solid_pipeline = PipelineDefinition.create_single_solid_pipeline(
        PipelineDefinition(solids=create_diamond_solids(), dependencies=diamond_deps()),
        'A',
        {
            'A': {
                'A_input': stub_solid,
            },
        },
    )

    result = execute_pipeline(single_solid_pipeline)
    assert result.success
def test_only_final():
    pipeline = PipelineDefinition.create_single_solid_pipeline(
        define_part_fourteen_step_one(),
        'final',
        injected_solids={
            'final': {
                'num1': define_stub_solid('stub_a', 3),
                'num2': define_stub_solid('stub_b', 4),
            }
        })

    result = execute_pipeline(pipeline)

    assert result.success
    assert len(result.result_list) == 3
    assert result.result_for_solid('stub_a').transformed_value() == 3
    assert result.result_for_solid('stub_b').transformed_value() == 4
    assert result.result_for_solid('final').transformed_value() == 12