@@ -5829,6 +5829,34 @@ mod tests {
58295829 assert_eq ! ( perms. ffi. query( Some ( & ffi_query( "/foo" ) ) ) , PermissionState :: Denied ) ;
58305830 assert_eq ! ( perms. ffi. query( Some ( & ffi_query( "/foo/specific" ) ) ) , PermissionState :: Granted ) ;
58315831 } ;
5832+ #[ rustfmt:: skip]
5833+ {
5834+ // flipped above
5835+ let perms = Permissions :: from_options (
5836+ & parser,
5837+ & PermissionsOptions {
5838+ allow_read : Some ( svec ! [ "/foo" ] ) ,
5839+ deny_read : Some ( svec ! [ "/foo/specific" ] ) ,
5840+ allow_write : Some ( svec ! [ "/foo" ] ) ,
5841+ deny_write : Some ( svec ! [ "/foo/specific" ] ) ,
5842+ allow_ffi : Some ( svec ! [ "/foo" ] ) ,
5843+ deny_ffi : Some ( svec ! [ "/foo/specific" ] ) ,
5844+ ..Default :: default ( )
5845+ } ,
5846+ )
5847+ . unwrap ( ) ;
5848+ assert_eq ! ( perms. read. query( Some ( & read_query( "/foo" ) ) ) , PermissionState :: GrantedPartial ) ;
5849+ assert_eq ! ( perms. read. query( Some ( & read_query( "/foo/bar" ) ) ) , PermissionState :: Granted ) ;
5850+ assert_eq ! ( perms. read. query( Some ( & read_query( "/" ) ) ) , PermissionState :: Prompt ) ;
5851+ assert_eq ! ( perms. read. query( Some ( & read_query( "/foo/specific" ) ) ) , PermissionState :: Denied ) ;
5852+ assert_eq ! ( perms. read. query( Some ( & read_query( "/foo/specific/data.txt" ) ) ) , PermissionState :: Denied ) ;
5853+ assert_eq ! ( perms. write. query( Some ( & write_query( "/foo" ) ) ) , PermissionState :: GrantedPartial ) ;
5854+ assert_eq ! ( perms. write. query( Some ( & write_query( "/foo/bar" ) ) ) , PermissionState :: Granted ) ;
5855+ assert_eq ! ( perms. write. query( Some ( & write_query( "/foo/specific" ) ) ) , PermissionState :: Denied ) ;
5856+ assert_eq ! ( perms. ffi. query( Some ( & ffi_query( "/foo" ) ) ) , PermissionState :: GrantedPartial ) ;
5857+ assert_eq ! ( perms. ffi. query( Some ( & ffi_query( "/foo/bar" ) ) ) , PermissionState :: Granted ) ;
5858+ assert_eq ! ( perms. ffi. query( Some ( & ffi_query( "/foo/specific" ) ) ) , PermissionState :: Denied ) ;
5859+ } ;
58325860 }
58335861
58345862 #[ test]
0 commit comments