|
1
|
|
|
from dirutility import DirPaths |
|
2
|
|
|
from looptools.timer import Timer |
|
3
|
|
|
|
|
4
|
|
|
|
|
5
|
|
View Code Duplication |
def test_case(case): |
|
|
|
|
|
|
6
|
|
|
test_cases = { |
|
7
|
|
|
'projects': { |
|
8
|
|
|
'rootpath': |
|
9
|
|
|
'/Volumes/Storage/HPA Design', |
|
10
|
|
|
'exclude': [ |
|
11
|
|
|
'20080081_Rosenfeld_Realty', '20080082_Clarewood_Homes_WEB', '20080083_Dipersio_WEB', |
|
12
|
|
|
'20080084_Olivieri', '20080085_Greymont', '20080086_Colonial_Builders', |
|
13
|
|
|
'20080087_Jolin_Corporation_WEB', '20080088_Atlantic_Construction_', '20080089_Mariner_Development_WEB', |
|
14
|
|
|
'20080090_Marinella_Construction', '20080091_Homestead_Construction_WEB' |
|
15
|
|
|
], |
|
16
|
|
|
'include': [ |
|
17
|
|
|
'20080094_Meadowfield_WEB', '20080095_Marinella_Construction', '20080096_Rosenfeld_Realty', |
|
18
|
|
|
'20080097_Atlantic_Construction_' |
|
19
|
|
|
] |
|
20
|
|
|
}, |
|
21
|
|
|
'projects2': { |
|
22
|
|
|
'rootpath': '/Volumes/Storage/HPA Design', |
|
23
|
|
|
'exclude': None, |
|
24
|
|
|
'include': None |
|
25
|
|
|
}, |
|
26
|
|
|
'projects3': { |
|
27
|
|
|
'rootpath': '/Volumes/Storage II/HPA Design/Projects/2008', |
|
28
|
|
|
'exclude': None, |
|
29
|
|
|
'include': None |
|
30
|
|
|
}, |
|
31
|
|
|
} |
|
32
|
|
|
|
|
33
|
|
|
return test_cases[case]['rootpath'], test_cases[case]['exclude'], test_cases[case]['include'] |
|
34
|
|
|
|
|
35
|
|
|
|
|
36
|
|
View Code Duplication |
if __name__ == "__main__": |
|
|
|
|
|
|
37
|
|
|
save = '/Users/Stephen/Desktop' |
|
38
|
|
|
iters = 1 |
|
39
|
|
|
root = "/Volumes/Storage II/HPA Design/Projects" |
|
40
|
|
|
|
|
41
|
|
|
max_level = 3 |
|
42
|
|
|
to_exclude = ['.xls', '.doc'] |
|
43
|
|
|
years = set(range(2007, 2008)) |
|
44
|
|
|
filters = { |
|
45
|
|
|
0: { |
|
46
|
|
|
'include': years, |
|
47
|
|
|
'exclude': {'prism'} |
|
48
|
|
|
}, |
|
49
|
|
|
1: { |
|
50
|
|
|
'exclude': { |
|
51
|
|
|
'temp projects', 'temp', 'temps', 'copy of temp folder', 'new project folders', 'new folder', |
|
52
|
|
|
'al bonfilio', 'new project folders - copy', '00000001_ilivtests' |
|
53
|
|
|
} |
|
54
|
|
|
}, |
|
55
|
|
|
2: { |
|
56
|
|
|
'include': {'Con Docs', 'Design Development', 'Marketing', 'Photos', 'Plot Files'} |
|
57
|
|
|
} |
|
58
|
|
|
} |
|
59
|
|
|
|
|
60
|
|
|
with Timer(DirPaths): |
|
61
|
|
|
for i in range(0, iters): |
|
62
|
|
|
paths = DirPaths(root, |
|
63
|
|
|
console_output=True, |
|
64
|
|
|
parallelize=True, |
|
65
|
|
|
to_exclude=to_exclude, |
|
66
|
|
|
max_level=max_level, |
|
67
|
|
|
filters=filters, |
|
68
|
|
|
console_stream=False, |
|
69
|
|
|
pool_size=16, |
|
70
|
|
|
non_empty_folders=True).walk() |
|
71
|
|
|
paths_sorted = sorted(paths) |
|
|
|
|
|
|
72
|
|
|
|
|
73
|
|
|
with Timer(DirPaths): |
|
74
|
|
|
for i in range(0, iters): |
|
75
|
|
|
paths2 = DirPaths(root, |
|
76
|
|
|
console_output=True, |
|
77
|
|
|
console_stream=False, |
|
78
|
|
|
to_exclude=to_exclude, |
|
79
|
|
|
max_level=max_level, |
|
80
|
|
|
filters=filters, |
|
81
|
|
|
non_empty_folders=True).walk() |
|
82
|
|
|
paths_sorted = sorted(paths2) |
|
|
|
|
|
|
83
|
|
|
|
|
84
|
|
|
# with MyTimer(list_compare): |
|
85
|
|
|
# unique1, unique2 = list_compare(paths, paths2) |
|
86
|
|
|
# DictTools(save, 'DirPaths_filters_projects_1_u').save(list(unique1)) |
|
87
|
|
|
# DictTools(save, 'DirPaths_filters_projects_2_u').save(list(unique2)) |
|
88
|
|
|
|