6 function(helper
) { helper
.getDirectory('/', 'a', {create
:true}); },
7 function(helper
) { helper
.getFile('/', 'b', {create
:true}); }
10 {fullPath
:'/a', isDirectory
:true},
18 function(helper
) { helper
.getDirectory('/', 'a', {create
:true}); },
19 function(helper
) { helper
.getDirectory('/a', 'b', {create
:true}); },
20 function(helper
) { helper
.getDirectory('/a/b', 'c', {create
:true}); },
21 function(helper
) { helper
.getDirectory('/a/b/c', 'd', {create
:true}); },
22 function(helper
) { helper
.getFile('/a/b/c/d', 'e', {create
:true}); },
25 {fullPath
:'/a/b/c/d/e'},
29 name
: 'CreateNestedWithAbsolutePath',
31 {fullPath
:'/dummy', isDirectory
:true},
34 function(helper
) { helper
.getDirectory('/dummy', '/a', {create
:true}); },
35 function(helper
) { helper
.getDirectory('/dummy', '/a/b', {create
:true}); },
36 function(helper
) { helper
.getDirectory('/dummy', '/a/b/c', {create
:true}); },
37 function(helper
) { helper
.getDirectory('/dummy', '/a/b/c/d', {create
:true}); },
38 function(helper
) { helper
.getFile('/dummy', '/a/b/c/d/e', {create
:true}); }
41 {fullPath
:'/dummy', isDirectory
:true},
42 {fullPath
:'/a/b/c/d/e'},
46 name
: 'CreateNestedWithRelativePath',
48 {fullPath
:'/a', isDirectory
:true},
51 function(helper
) { helper
.getDirectory('/a', './b', {create
:true}); },
52 function(helper
) { helper
.getDirectory('/a', '../b', {create
:true}); },
53 function(helper
) { helper
.getDirectory('/a', '../../b/c', {create
:true}); },
54 function(helper
) { helper
.getDirectory('/a', '/a/../../d', {create
:true}); },
55 function(helper
) { helper
.getDirectory('/a', '/a/../../b/./c/../../../../../e', {create
:true}); },
56 function(helper
) { helper
.getDirectory('/a', '/a/../.../g', {create
:true}, 'EncodingError'); },
57 function(helper
) { helper
.getFile('/a', './b.txt', {create
:true}); },
58 function(helper
) { helper
.getFile('/a', '../b.txt', {create
:true}); },
59 function(helper
) { helper
.getFile('/a', '../../b/c.txt', {create
:true}); },
60 function(helper
) { helper
.getFile('/a', '/a/../../d.txt', {create
:true}); },
61 function(helper
) { helper
.getFile('/a', '/a/../../b/./c/../../../../../e.txt', {create
:true}); },
62 function(helper
) { helper
.getFile('/a', '/a/../.../g.txt', {create
:true}, 'EncodingError'); },
65 {fullPath
:'/a', isDirectory
:true},
66 {fullPath
:'/a/b', isDirectory
:true},
67 {fullPath
:'/b', isDirectory
:true},
68 {fullPath
:'/b/c', isDirectory
:true},
69 {fullPath
:'/d', isDirectory
:true},
70 {fullPath
:'/e', isDirectory
:true},
71 {fullPath
:'/f', nonexistent
:true},
72 {fullPath
:'/a/f', nonexistent
:true},
73 {fullPath
:'/g', nonexistent
:true},
74 {fullPath
:'/a/g', nonexistent
:true},
75 {fullPath
:'/a/b.txt'},
77 {fullPath
:'/b/c.txt'},
80 {fullPath
:'/f.txt', nonexistent
:true},
81 {fullPath
:'/a/f.txt', nonexistent
:true},
82 {fullPath
:'/g.txt', nonexistent
:true},
83 {fullPath
:'/a/g.txt', nonexistent
:true},
87 name
: 'GetExistingEntry',
90 function(helper
) { helper
.getDirectory('/', 'a', {create
:true}); },
91 function(helper
) { helper
.getFile('/', 'b', {create
:true}); },
92 function(helper
) { helper
.getDirectory('/', 'a'); },
93 function(helper
) { helper
.getFile('/', 'b'); }
96 {fullPath
:'/a', isDirectory
:true},
101 name
: 'GetNonExistent',
104 function(helper
) { helper
.getDirectory('/', 'a', {}, 'NotFoundError'); },
105 function(helper
) { helper
.getFile('/', 'b', {}, 'NotFoundError'); },
106 function(helper
) { helper
.getDirectory('/', '/nonexistent/a', {create
:true}, 'NotFoundError'); },
107 function(helper
) { helper
.getFile('/', '/nonexistent/b', {create
:true}, 'NotFoundError'); }
112 name
: 'GetFileForDirectory',
114 {fullPath
:'/a', isDirectory
:true}
117 function(helper
) { helper
.getFile('/', 'a', {}, 'TypeMismatchError'); },
118 function(helper
) { helper
.getFile('/', '/a', {}, 'TypeMismatchError'); },
121 {fullPath
:'/a', isDirectory
:true}
125 name
: 'GetDirectoryForFile',
130 function(helper
) { helper
.getDirectory('/', 'a', {}, 'TypeMismatchError'); },
131 function(helper
) { helper
.getDirectory('/', '/a', {}, 'TypeMismatchError'); },
138 name
: 'CreateWithExclusive',
140 {fullPath
:'/a', isDirectory
:true},
144 function(helper
) { helper
.getDirectory('/', 'a', {create
:true, exclusive
:true}, 'InvalidModificationError'); },
145 function(helper
) { helper
.getFile('/', 'b', {create
:true, exclusive
:true}, 'InvalidModificationError'); }
148 {fullPath
:'/a', isDirectory
:true},