Example #1
0
def test_compress_formats():
    assert short_form_multiple_formats([{'extension': '.ipynb'}]) == 'ipynb'
    assert short_form_multiple_formats([{
        'extension': '.ipynb'
    }, {
        'extension': '.md'
    }]) == 'ipynb,md'
    assert short_form_multiple_formats([{
        'extension': '.ipynb'
    }, {
        'extension': '.py',
        'format_name': 'light'
    }]) == 'ipynb,py:light'
    assert short_form_multiple_formats([{
        'extension': '.ipynb'
    }, {
        'extension': '.py',
        'format_name': 'light'
    }, {
        'extension': '.md',
        'comment_magics': True
    }]) == 'ipynb,py:light,md'
    assert short_form_multiple_formats([{
        'extension': '.py',
        'suffix': '.pct',
        'format_name': 'percent'
    }]) == '.pct.py:percent'
Example #2
0
def test_compress_formats():
    assert short_form_multiple_formats([{"extension": ".ipynb"}]) == "ipynb"
    assert (short_form_multiple_formats([{
        "extension": ".ipynb"
    }, {
        "extension": ".md"
    }]) == "ipynb,md")
    assert (short_form_multiple_formats([{
        "extension": ".ipynb"
    }, {
        "extension": ".py",
        "format_name": "light"
    }]) == "ipynb,py:light")
    assert (short_form_multiple_formats([
        {
            "extension": ".ipynb"
        },
        {
            "extension": ".py",
            "format_name": "light"
        },
        {
            "extension": ".md",
            "comment_magics": True
        },
    ]) == "ipynb,py:light,md")
    assert (short_form_multiple_formats([{
        "extension": ".py",
        "suffix": ".pct",
        "format_name": "percent"
    }]) == ".pct.py:percent")
Example #3
0
def test_prefix_on_root_174():
    short_formats = "ipynb,python//py:percent"

    formats = long_form_multiple_formats(short_formats)
    assert short_form_multiple_formats(formats) == short_formats

    expected_paths = ["Untitled.ipynb", "python/Untitled.py"]
    for fmt, path in zip(formats, expected_paths):
        compare(paired_paths(path, fmt, formats), list(zip(expected_paths, formats)))
Example #4
0
def test_prefix_on_root_174():
    short_formats = 'ipynb,python//py:percent'

    formats = long_form_multiple_formats(short_formats)
    assert short_form_multiple_formats(formats) == short_formats

    expected_paths = ['/Untitled.ipynb', '/python/Untitled.py']
    for fmt, path in zip(formats, expected_paths):
        compare(zip(expected_paths, formats), paired_paths(path, fmt, formats))
Example #5
0
def test_prefix_and_suffix():
    short_formats = (
        "notebook_folder/notebook_prefix_/_notebook_suffix.ipynb,"
        "script_folder//_in_percent_format.py:percent,"
        "script_folder//_in_light_format.py"
    )

    formats = long_form_multiple_formats(short_formats)
    assert short_form_multiple_formats(formats) == short_formats

    expected_paths = [
        "parent/notebook_folder/notebook_prefix_NOTEBOOK_NAME_notebook_suffix.ipynb",
        "parent/script_folder/NOTEBOOK_NAME_in_percent_format.py",
        "parent/script_folder/NOTEBOOK_NAME_in_light_format.py",
    ]
    for fmt, path in zip(formats, expected_paths):
        compare(paired_paths(path, fmt, formats), list(zip(expected_paths, formats)))

    # without the parent folder
    expected_paths = [path[7:] for path in expected_paths]
    for fmt, path in zip(formats, expected_paths):
        compare(paired_paths(path, fmt, formats), list(zip(expected_paths, formats)))

    # Not the expected parent folder
    with pytest.raises(InconsistentPath):
        paired_paths(
            "script_folder_incorrect/NOTEBOOK_NAME_in_percent_format.py",
            formats[1],
            formats,
        )

    # Not the expected suffix
    with pytest.raises(InconsistentPath):
        paired_paths(
            "parent/script_folder/NOTEBOOK_NAME_in_LIGHT_format.py", formats[2], formats
        )

    # Not the expected extension
    with pytest.raises(InconsistentPath):
        paired_paths(
            "notebook_folder/notebook_prefix_NOTEBOOK_NAME_notebook_suffix.py",
            formats[0],
            formats,
        )
Example #6
0
def test_pandoc_format_is_preserved():
    formats_org = 'ipynb,md,.pandoc.md:pandoc,py:light'
    long = long_form_multiple_formats(formats_org)
    formats_new = short_form_multiple_formats(long)

    compare(formats_org, formats_new)