aboutsummaryrefslogtreecommitdiff
path: root/tests/zips_tests.py
blob: 8d1505f3467a5ab5a1c8db8c1e191640551d6167 (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
31
32
33
34
35
36
37
from nose.tools import istest, assert_equal

from mammoth import zips


@istest
def split_path_splits_zip_paths_on_last_forward_slash():
    assert_equal(("a", "b"), zips.split_path("a/b"))
    assert_equal(("a/b", "c"), zips.split_path("a/b/c"))
    assert_equal(("/a/b", "c"), zips.split_path("/a/b/c"))


@istest
def when_path_has_no_forward_slashes_then_split_path_returns_empty_dirname():
    assert_equal(("", "name"), zips.split_path("name"))


@istest
def join_path_joins_arguments_with_forward_slashes():
    assert_equal("a/b", zips.join_path("a", "b"))
    assert_equal("a/b/c", zips.join_path("a/b", "c"))
    assert_equal("/a/b/c", zips.join_path("/a/b", "c"))


@istest
def empty_parts_are_ignored_when_joining_paths():
    assert_equal("a", zips.join_path("a", ""))
    assert_equal("b", zips.join_path("", "b"))
    assert_equal("a/b", zips.join_path("a", "", "b"))


@istest
def when_joining_paths_then_absolute_paths_ignore_earlier_paths():
    assert_equal("/b", zips.join_path("a", "/b"))
    assert_equal("/b/c", zips.join_path("a", "/b", "c"))
    assert_equal("/b", zips.join_path("/a", "/b"))
    assert_equal("/a", zips.join_path("/a"))