@@ -233,31 +233,33 @@ func TestWalk(t *testing.T) {
233
233
}
234
234
checkMarks (t );
235
235
236
- // introduce 2 errors: chmod top-level directories to 0
237
- os .Chmod (Join (tree .name , tree .entries [1 ].name ), 0 );
238
- os .Chmod (Join (tree .name , tree .entries [3 ].name ), 0 );
239
- // mark respective subtrees manually
240
- markTree (tree .entries [1 ]);
241
- markTree (tree .entries [3 ]);
242
- // correct double-marking of directory itself
243
- tree .entries [1 ].mark -- ;
244
- tree .entries [3 ].mark -- ;
245
-
246
- // 3) handle errors, expect two
247
- errors = make (chan os.Error , 64 );
248
- os .Chmod (Join (tree .name , tree .entries [1 ].name ), 0 );
249
- Walk (tree .name , v , errors );
250
- for i := 1 ; i <= 2 ; i ++ {
251
- if _ , ok := <- errors ; ! ok {
252
- t .Errorf ("%d. error expected, none found" , i );
253
- break ;
236
+ if os .Getuid () != 0 {
237
+ // introduce 2 errors: chmod top-level directories to 0
238
+ os .Chmod (Join (tree .name , tree .entries [1 ].name ), 0 );
239
+ os .Chmod (Join (tree .name , tree .entries [3 ].name ), 0 );
240
+ // mark respective subtrees manually
241
+ markTree (tree .entries [1 ]);
242
+ markTree (tree .entries [3 ]);
243
+ // correct double-marking of directory itself
244
+ tree .entries [1 ].mark -- ;
245
+ tree .entries [3 ].mark -- ;
246
+
247
+ // 3) handle errors, expect two
248
+ errors = make (chan os.Error , 64 );
249
+ os .Chmod (Join (tree .name , tree .entries [1 ].name ), 0 );
250
+ Walk (tree .name , v , errors );
251
+ for i := 1 ; i <= 2 ; i ++ {
252
+ if _ , ok := <- errors ; ! ok {
253
+ t .Errorf ("%d. error expected, none found" , i );
254
+ break ;
255
+ }
254
256
}
257
+ if err , ok := <- errors ; ok {
258
+ t .Errorf ("only two errors expected, found 3rd: %v" , err )
259
+ }
260
+ // the inaccessible subtrees were marked manually
261
+ checkMarks (t );
255
262
}
256
- if err , ok := <- errors ; ok {
257
- t .Errorf ("only two errors expected, found 3rd: %v" , err )
258
- }
259
- // the inaccessible subtrees were marked manually
260
- checkMarks (t );
261
263
262
264
// cleanup
263
265
os .Chmod (Join (tree .name , tree .entries [1 ].name ), 0770 );
0 commit comments