@@ -2,6 +2,7 @@ package test
2
2
3
3
import (
4
4
"os"
5
+ "strconv"
5
6
6
7
. "gopkg.in/check.v1"
7
8
. "gopkg.in/src-d/go-billy.v3"
@@ -135,6 +136,33 @@ func (s *DirSuite) TestReadDir(c *C) {
135
136
c .Assert (info , HasLen , 2 )
136
137
}
137
138
139
+ func (s * DirSuite ) TestReadDirNested (c * C ) {
140
+ max := 100
141
+ path := "/"
142
+ for i := 0 ; i <= max ; i ++ {
143
+ path = s .FS .Join (path , strconv .Itoa (i ))
144
+ }
145
+
146
+ files := []string {s .FS .Join (path , "f1" ), s .FS .Join (path , "f2" )}
147
+ for _ , name := range files {
148
+ err := util .WriteFile (s .FS , name , nil , 0644 )
149
+ c .Assert (err , IsNil )
150
+ }
151
+
152
+ path = "/"
153
+ for i := 0 ; i < max ; i ++ {
154
+ path = s .FS .Join (path , strconv .Itoa (i ))
155
+ info , err := s .FS .ReadDir (path )
156
+ c .Assert (err , IsNil )
157
+ c .Assert (info , HasLen , 1 )
158
+ }
159
+
160
+ path = s .FS .Join (path , strconv .Itoa (max ))
161
+ info , err := s .FS .ReadDir (path )
162
+ c .Assert (err , IsNil )
163
+ c .Assert (info , HasLen , 2 )
164
+ }
165
+
138
166
func (s * DirSuite ) TestReadDirWithMkDirAll (c * C ) {
139
167
err := s .FS .MkdirAll ("qux" , 0644 )
140
168
c .Assert (err , IsNil )
0 commit comments