summaryrefslogtreecommitdiffstats
path: root/tests/extensions_test.py
blob: 44f16a818e955bab6d3edbfb9642a62cb310db9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals

import pytest

from identify import extensions


@pytest.mark.parametrize('extension', extensions.EXTENSIONS)
def test_extensions_have_binary_or_text(extension):
    tags = extensions.EXTENSIONS[extension]
    assert len({'text', 'binary'} & tags) == 1, tags


@pytest.mark.parametrize('extension', extensions.EXTENSIONS_NEED_BINARY_CHECK)
def test_need_binary_check_do_not_specify_text_binary(extension):
    tags = extensions.EXTENSIONS_NEED_BINARY_CHECK[extension]
    assert len({'text', 'binary'} & tags) == 0, tags


def test_mutually_exclusive_check_types():
    assert not (
        set(extensions.EXTENSIONS) &
        set(extensions.EXTENSIONS_NEED_BINARY_CHECK)
    )