Exemplo n.º 1
0
def test_reader_csv_custom_params():
    the_csv = '"Nori";"Melon"'
    the_map = {"who": "Nori", "greet": "Melon"}

    operation = sequential(csv_to_map(["who", "greet"], delimiter=";"), keep(fields=["who", "greet"]))
    (transformed_output, transformed_error) = operation(the_csv)
    assert transformed_output == the_map
    assert transformed_error is None

    reverse_operation = map_to_csv(["who", "greet"], delimiter=";")
    (transformed_output, transformed_error) = reverse_operation(the_map)
    assert transformed_output == the_csv
    assert transformed_error is None
Exemplo n.º 2
0
def test_writer_csv_multiples_lines():
    lines_in = [{
        "who": "Thorin"
    }, {
        "who": "Dwalin"
    }, {
        "who": "Balin"
    }, {
        "who": "Kíli"
    }, {
        "who": "Fíli"
    }, {
        "who": "Dori"
    }, {
        "who": "Nori"
    }, {
        "who": "Ori"
    }, {
        "who": "Óin"
    }, {
        "who": "Glóin"
    }, {
        "who": "Bifur"
    }, {
        "who": "Bofur"
    }, {
        "who": "Bombur"
    }]
    lines_out_expected = [
        '"Thorin"', '"Dwalin"', '"Balin"', '"Kíli"', '"Fíli"', '"Dori"',
        '"Nori"', '"Ori"', '"Óin"', '"Glóin"', '"Bifur"', '"Bofur"', '"Bombur"'
    ]

    operation = sequential(keep(fields=["who"]), map_to_csv(["who"]))

    lines_out = [operation(x)[0] for x in lines_in]

    assert lines_out_expected == lines_out
Exemplo n.º 3
0
def test_writer_csv_some_working():
    operation = sequential(keep(fields=["who"]), map_to_csv(["who"]))
    (transformed_output, transformed_error) = operation({"who": "anciano"})
    assert transformed_output is not None
    assert transformed_output == '"anciano"'
    assert transformed_error is None
Exemplo n.º 4
0
def test_writer_csv_empty():
    operation = sequential(keep(fields=["who"]), map_to_csv(["who"]))
    (transformed_output, transformed_error) = operation(None)
    assert transformed_output is None
    assert transformed_error == {'who': 'who not found'}