aboutsummaryrefslogtreecommitdiff
path: root/setuptools/tests/test_dep_util.py
blob: e5027c102012e35af3643fd607bbbab045cdfcda (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
27
28
29
30
from setuptools.dep_util import newer_pairwise_group
import os
import pytest


@pytest.fixture
def groups_target(tmpdir):
    """Sets up some older sources, a target and newer sources.
    Returns a 3-tuple in this order.
    """
    creation_order = ['older.c', 'older.h', 'target.o', 'newer.c', 'newer.h']
    mtime = 0

    for i in range(len(creation_order)):
        creation_order[i] = os.path.join(str(tmpdir), creation_order[i])
        with open(creation_order[i], 'w'):
            pass

        # make sure modification times are sequential
        os.utime(creation_order[i], (mtime, mtime))
        mtime += 1

    return creation_order[:2], creation_order[2], creation_order[3:]


def test_newer_pairwise_group(groups_target):
    older = newer_pairwise_group([groups_target[0]], [groups_target[1]])
    newer = newer_pairwise_group([groups_target[2]], [groups_target[1]])
    assert older == ([], [])
    assert newer == ([groups_target[2]], [groups_target[1]])