HDFS-2332. Add test for HADOOP-7629 (using an immutable FsPermission object as an RPC parameter fails). Contributed by Todd Lipcon.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.23@1176691 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
eb30a784d1
commit
5f053afb44
|
@ -686,6 +686,9 @@ Release 0.23.0 - Unreleased
|
|||
HdfsConstants. (Harsh J Chouraria via atm)
|
||||
HDFS-2197. Refactor RPC call implementations out of NameNode class (todd)
|
||||
|
||||
HDFS-2332. Add test for HADOOP-7629 (using an immutable FsPermission
|
||||
object as an RPC parameter fails). (todd)
|
||||
|
||||
OPTIMIZATIONS
|
||||
|
||||
HDFS-1458. Improve checkpoint performance by avoiding unnecessary image
|
||||
|
|
|
@ -72,6 +72,7 @@ public class TestDFSPermission extends TestCase {
|
|||
final private static Path NON_EXISTENT_FILE = new Path("/NonExistentFile");
|
||||
|
||||
private FileSystem fs;
|
||||
private MiniDFSCluster cluster;
|
||||
private static Random r;
|
||||
|
||||
static {
|
||||
|
@ -105,18 +106,25 @@ public class TestDFSPermission extends TestCase {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setUp() throws IOException {
|
||||
cluster = new MiniDFSCluster.Builder(conf).numDataNodes(3).build();
|
||||
cluster.waitActive();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void tearDown() throws IOException {
|
||||
if (cluster != null) {
|
||||
cluster.shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
/** This tests if permission setting in create, mkdir, and
|
||||
* setPermission works correctly
|
||||
*/
|
||||
public void testPermissionSetting() throws Exception {
|
||||
MiniDFSCluster cluster = new MiniDFSCluster.Builder(conf).numDataNodes(3).build();
|
||||
try {
|
||||
cluster.waitActive();
|
||||
testPermissionSetting(OpType.CREATE); // test file creation
|
||||
testPermissionSetting(OpType.MKDIRS); // test directory creation
|
||||
} finally {
|
||||
cluster.shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
private void initFileSystem(short umask) throws Exception {
|
||||
|
@ -245,17 +253,22 @@ public class TestDFSPermission extends TestCase {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* check that ImmutableFsPermission can be used as the argument
|
||||
* to setPermission
|
||||
*/
|
||||
public void testImmutableFsPermission() throws IOException {
|
||||
fs = FileSystem.get(conf);
|
||||
|
||||
// set the permission of the root to be world-wide rwx
|
||||
fs.setPermission(new Path("/"),
|
||||
FsPermission.createImmutable((short)0777));
|
||||
}
|
||||
|
||||
/* check if the ownership of a file/directory is set correctly */
|
||||
public void testOwnership() throws Exception {
|
||||
MiniDFSCluster cluster = new MiniDFSCluster.Builder(conf).numDataNodes(3).build();
|
||||
try {
|
||||
cluster.waitActive();
|
||||
testOwnership(OpType.CREATE); // test file creation
|
||||
testOwnership(OpType.MKDIRS); // test directory creation
|
||||
} finally {
|
||||
fs.close();
|
||||
cluster.shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
/* change a file/directory's owner and group.
|
||||
|
@ -342,9 +355,7 @@ public class TestDFSPermission extends TestCase {
|
|||
/* Check if namenode performs permission checking correctly for
|
||||
* superuser, file owner, group owner, and other users */
|
||||
public void testPermissionChecking() throws Exception {
|
||||
MiniDFSCluster cluster = new MiniDFSCluster.Builder(conf).numDataNodes(3).build();
|
||||
try {
|
||||
cluster.waitActive();
|
||||
fs = FileSystem.get(conf);
|
||||
|
||||
// set the permission of the root to be world-wide rwx
|
||||
|
@ -401,7 +412,6 @@ public class TestDFSPermission extends TestCase {
|
|||
parentPermissions, permissions, parentPaths, filePaths, dirPaths);
|
||||
} finally {
|
||||
fs.close();
|
||||
cluster.shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue