@@ -171,46 +171,49 @@ def test_glob_directory_names(self):
171171 self .norm ('aab' , 'F' )])
172172
173173 def test_glob_directory_with_trailing_slash (self ):
174- # Patterns ending with a slash shouldn't match non-dirs
175- res = glob .glob (self .norm ('Z*Z' ) + os .sep )
176- self .assertEqual (res , [])
177- res = glob .glob (self .norm ('ZZZ' ) + os .sep )
178- self .assertEqual (res , [])
179- # When there is a wildcard pattern which ends with os.sep, glob()
180- # doesn't blow up.
181- res = glob .glob (self .norm ('aa*' ) + os .sep )
182- self .assertEqual (len (res ), 2 )
183- # either of these results is reasonable
184- self .assertIn (set (res ), [
185- {self .norm ('aaa' ), self .norm ('aab' )},
186- {self .norm ('aaa' ) + os .sep , self .norm ('aab' ) + os .sep },
187- ])
174+ seps = (os .sep , os .altsep ) if os .altsep else (os .sep ,)
175+ for sep in seps :
176+ # Patterns ending with a slash shouldn't match non-dirs
177+ self .assertEqual (glob .glob (self .norm ('Z*Z' ) + sep ), [])
178+ self .assertEqual (glob .glob (self .norm ('ZZZ' ) + sep ), [])
179+ self .assertEqual (glob .glob (self .norm ('aaa' ) + sep ),
180+ [self .norm ('aaa' ) + sep ])
181+ self .assertEqual (glob .glob (self .norm ('aaa' ) + sep * 2 ),
182+ [self .norm ('aaa' ) + sep * 2 ])
183+ # When there is a wildcard pattern which ends with a pathname
184+ # separator, glob() doesn't blow up.
185+ eq = self .assertSequencesEqual_noorder
186+ eq (glob .glob (self .norm ('aa*' ) + sep ),
187+ [self .norm ('aaa' ) + sep , self .norm ('aab' ) + sep ])
188+ eq (glob .glob (self .norm ('aa*' ) + sep * 2 ),
189+ [self .norm ('aaa' ) + sep , self .norm ('aab' ) + sep ])
188190
189191 def test_glob_bytes_directory_with_trailing_slash (self ):
190192 # Same as test_glob_directory_with_trailing_slash, but with a
191193 # bytes argument.
192- res = glob .glob (os .fsencode (self .norm ('Z*Z' ) + os .sep ))
193- self .assertEqual (res , [])
194- res = glob .glob (os .fsencode (self .norm ('ZZZ' ) + os .sep ))
195- self .assertEqual (res , [])
196- res = glob .glob (os .fsencode (self .norm ('aa*' ) + os .sep ))
197- self .assertEqual (len (res ), 2 )
198- # either of these results is reasonable
199- self .assertIn (set (res ), [
200- {os .fsencode (self .norm ('aaa' )),
201- os .fsencode (self .norm ('aab' ))},
202- {os .fsencode (self .norm ('aaa' ) + os .sep ),
203- os .fsencode (self .norm ('aab' ) + os .sep )},
204- ])
194+ seps = (os .sep , os .altsep ) if os .altsep else (os .sep ,)
195+ for sep in seps :
196+ self .assertEqual (glob .glob (os .fsencode (self .norm ('Z*Z' ) + sep )), [])
197+ self .assertEqual (glob .glob (os .fsencode (self .norm ('ZZZ' ) + sep )), [])
198+ self .assertEqual (glob .glob (os .fsencode (self .norm ('aaa' ) + sep )),
199+ [os .fsencode (self .norm ('aaa' ) + sep )])
200+ self .assertEqual (glob .glob (os .fsencode (self .norm ('aaa' ) + sep * 2 )),
201+ [os .fsencode (self .norm ('aaa' ) + sep * 2 )])
202+ eq = self .assertSequencesEqual_noorder
203+ eq (glob .glob (os .fsencode (self .norm ('aa*' ) + sep )),
204+ [os .fsencode (self .norm ('aaa' ) + sep ),
205+ os .fsencode (self .norm ('aab' ) + sep )])
206+ eq (glob .glob (os .fsencode (self .norm ('aa*' ) + sep * 2 )),
207+ [os .fsencode (self .norm ('aaa' ) + sep ),
208+ os .fsencode (self .norm ('aab' ) + sep )])
205209
206210 @skip_unless_symlink
207211 def test_glob_symlinks (self ):
208212 eq = self .assertSequencesEqual_noorder
209213 eq (self .glob ('sym3' ), [self .norm ('sym3' )])
210214 eq (self .glob ('sym3' , '*' ), [self .norm ('sym3' , 'EF' ),
211215 self .norm ('sym3' , 'efg' )])
212- self .assertIn (self .glob ('sym3' + os .sep ),
213- [[self .norm ('sym3' )], [self .norm ('sym3' ) + os .sep ]])
216+ eq (self .glob ('sym3' + os .sep ), [self .norm ('sym3' ) + os .sep ])
214217 eq (self .glob ('*' , '*F' ),
215218 [self .norm ('aaa' , 'zzzF' ),
216219 self .norm ('aab' , 'F' ), self .norm ('sym3' , 'EF' )])
0 commit comments