HDFS-2127. Add a test that ensure AccessControlExceptions contain a full path. Contributed by Stephen Chu

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1393878 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Eli Collins 2012-10-04 02:06:56 +00:00
parent 5c19b6b7b6
commit 2c66a9f5ae
2 changed files with 16 additions and 1 deletions

View File

@ -137,6 +137,9 @@ Trunk (Unreleased)
HDFS-3880. Use Builder to build RPC server in HDFS.
(Brandon Li vias suresh)
HDFS-2127. Add a test that ensure AccessControlExceptions contain
a full path. (Stephen Chu via eli)
OPTIMIZATIONS
BUG FIXES

View File

@ -166,7 +166,7 @@ public void testCreate() throws Exception {
}
@Test
public void testFilePermision() throws Exception {
public void testFilePermission() throws Exception {
final Configuration conf = new HdfsConfiguration();
conf.setBoolean(DFSConfigKeys.DFS_PERMISSIONS_ENABLED_KEY, true);
MiniDFSCluster cluster = new MiniDFSCluster.Builder(conf).numDataNodes(3).build();
@ -244,6 +244,10 @@ static boolean canMkdirs(FileSystem fs, Path p) throws IOException {
fs.mkdirs(p);
return true;
} catch(AccessControlException e) {
// We check that AccessControlExceptions contain absolute paths.
Path parent = p.getParent();
assertTrue(parent.isUriPathAbsolute());
assertTrue(e.getMessage().contains(parent.toString()));
return false;
}
}
@ -253,6 +257,9 @@ static boolean canCreate(FileSystem fs, Path p) throws IOException {
fs.create(p);
return true;
} catch(AccessControlException e) {
Path parent = p.getParent();
assertTrue(parent.isUriPathAbsolute());
assertTrue(e.getMessage().contains(parent.toString()));
return false;
}
}
@ -262,6 +269,8 @@ static boolean canOpen(FileSystem fs, Path p) throws IOException {
fs.open(p);
return true;
} catch(AccessControlException e) {
assertTrue(p.isUriPathAbsolute());
assertTrue(e.getMessage().contains(p.toString()));
return false;
}
}
@ -272,6 +281,9 @@ static boolean canRename(FileSystem fs, Path src, Path dst
fs.rename(src, dst);
return true;
} catch(AccessControlException e) {
Path parent = dst.getParent();
assertTrue(parent.isUriPathAbsolute());
assertTrue(e.getMessage().contains(parent.toString()));
return false;
}
}