@@ -220,16 +220,33 @@ mod entry_mode {
220
220
}
221
221
222
222
assert ! ( mode( EntryKind :: Blob ) . is_blob( ) ) ;
223
+ assert ! ( EntryMode ( 0o100645 ) . is_blob( ) ) ;
224
+ assert_eq ! ( EntryMode ( 0o100645 ) . kind( ) , EntryKind :: Blob ) ;
225
+ assert ! ( !EntryMode ( 0o100675 ) . is_executable( ) ) ;
226
+ assert ! ( EntryMode ( 0o100700 ) . is_executable( ) ) ;
227
+ assert_eq ! ( EntryMode ( 0o100700 ) . kind( ) , EntryKind :: BlobExecutable ) ;
223
228
assert ! ( !mode( EntryKind :: Blob ) . is_link( ) ) ;
224
229
assert ! ( mode( EntryKind :: BlobExecutable ) . is_blob( ) ) ;
230
+ assert ! ( mode( EntryKind :: BlobExecutable ) . is_executable( ) ) ;
225
231
assert ! ( mode( EntryKind :: Blob ) . is_blob_or_symlink( ) ) ;
226
232
assert ! ( mode( EntryKind :: BlobExecutable ) . is_blob_or_symlink( ) ) ;
227
233
228
234
assert ! ( !mode( EntryKind :: Link ) . is_blob( ) ) ;
229
235
assert ! ( mode( EntryKind :: Link ) . is_link( ) ) ;
236
+ assert ! ( EntryMode ( 0o121234 ) . is_link( ) ) ;
237
+ assert_eq ! ( EntryMode ( 0o121234 ) . kind( ) , EntryKind :: Link ) ;
230
238
assert ! ( mode( EntryKind :: Link ) . is_blob_or_symlink( ) ) ;
231
239
assert ! ( mode( EntryKind :: Tree ) . is_tree( ) ) ;
240
+ assert ! ( EntryMode ( 0o040101 ) . is_tree( ) ) ;
241
+ assert_eq ! ( EntryMode ( 0o040101 ) . kind( ) , EntryKind :: Tree ) ;
232
242
assert ! ( mode( EntryKind :: Commit ) . is_commit( ) ) ;
243
+ assert ! ( EntryMode ( 0o167124 ) . is_commit( ) ) ;
244
+ assert_eq ! ( EntryMode ( 0o167124 ) . kind( ) , EntryKind :: Commit ) ;
245
+ assert_eq ! (
246
+ EntryMode ( 0o000000 ) . kind( ) ,
247
+ EntryKind :: Commit ,
248
+ "commit is really 'anything else' as `kind()` can't fail"
249
+ ) ;
233
250
}
234
251
235
252
#[ test]
0 commit comments