hadoop-common-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From e..@apache.org
Subject svn commit: r1035162 - in /hadoop/common/trunk: ./ src/test/core/org/apache/hadoop/fs/
Date Mon, 15 Nov 2010 07:30:23 GMT
Author: eli
Date: Mon Nov 15 07:30:23 2010
New Revision: 1035162

URL: http://svn.apache.org/viewvc?rev=1035162&view=rev
Log:
HADOOP-6562. FileContextSymlinkBaseTest should use FileContextTestHelper. Contributed by Eli
Collins

Modified:
    hadoop/common/trunk/CHANGES.txt
    hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java
    hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java
    hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java

Modified: hadoop/common/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/CHANGES.txt?rev=1035162&r1=1035161&r2=1035162&view=diff
==============================================================================
--- hadoop/common/trunk/CHANGES.txt (original)
+++ hadoop/common/trunk/CHANGES.txt Mon Nov 15 07:30:23 2010
@@ -177,6 +177,8 @@ Trunk (unreleased changes)
 
     HADOOP-7032. Assert type constraints in the FileStatus constructor. (eli)
 
+    HADOOP-6562. FileContextSymlinkBaseTest should use FileContextTestHelper. (eli)
+
   OPTIMIZATIONS
 
     HADOOP-6884. Add LOG.isDebugEnabled() guard for each LOG.debug(..).

Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java?rev=1035162&r1=1035161&r2=1035162&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java
(original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextSymlinkBaseTest.java
Mon Nov 15 07:30:23 2010
@@ -19,8 +19,6 @@ package org.apache.hadoop.fs;
 
 import java.io.*;
 import java.net.URI;
-import java.util.Iterator;
-import java.util.Random;
 import java.util.EnumSet;
 import org.apache.hadoop.fs.FileContext;
 import org.apache.hadoop.fs.Options.CreateOpts;
@@ -29,7 +27,6 @@ import org.apache.hadoop.fs.permission.F
 import org.apache.hadoop.fs.CreateFlag;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.FSDataOutputStream;
-import org.apache.hadoop.fs.FSDataInputStream;
 import static org.apache.hadoop.fs.FileContextTestHelper.*;
 import static org.junit.Assert.*;
 
@@ -46,10 +43,10 @@ public abstract class FileContextSymlink
   static final int  fileSize  = 16384;
  
   protected static FileContext fc;
-  
+
   abstract protected String getScheme();
-  abstract protected String testBaseDir1();
-  abstract protected String testBaseDir2();
+  abstract protected String testBaseDir1() throws IOException;
+  abstract protected String testBaseDir2() throws IOException;
   abstract protected URI testURI();
 
   protected IOException unwrapException(IOException e) {
@@ -58,64 +55,47 @@ public abstract class FileContextSymlink
 
   protected static void createAndWriteFile(FileContext fc, Path p) 
       throws IOException {
-    FSDataOutputStream out;
-    out = fc.create(p, EnumSet.of(CreateFlag.CREATE),
-                    CreateOpts.createParent(),
-                    CreateOpts.repFac((short) 1),
-                    CreateOpts.blockSize(blockSize));
-    byte[] buf = new byte[fileSize];
-    Random rand = new Random(seed);
-    rand.nextBytes(buf);
-    out.write(buf);
-    out.close();
+    createFile(fc, p, fileSize / blockSize,
+        CreateOpts.createParent(),
+        CreateOpts.repFac((short) 1),
+        CreateOpts.blockSize(blockSize));
   }
-  
+
   protected static void createAndWriteFile(Path p) throws IOException {
     createAndWriteFile(fc, p);
   }
 
-  protected void readFile(Path p) throws IOException {
-    FSDataInputStream out = fc.open(p);
-    byte[] actual = new byte[fileSize];
-    out.readFully(actual);
-    out.close();
+  protected static void readFile(Path p) throws IOException {
+    FileContextTestHelper.readFile(fc, p, fileSize);
   }
 
-  protected void readFile(FileContext fc, Path p) throws IOException {
-    FSDataInputStream out = fc.open(p);
-    byte[] actual = new byte[fileSize];
-    out.readFully(actual);
-    out.close();
+  protected static void readFile(FileContext fc, Path p) throws IOException {
+    FileContextTestHelper.readFile(fc, p, fileSize);
   }
-  
-  protected void appendToFile(Path p) throws IOException {
-    FSDataOutputStream out;
-    out = fc.create(p, EnumSet.of(CreateFlag.APPEND));
-    byte[] buf = new byte[fileSize];
-    Random rand = new Random(seed);
-    rand.nextBytes(buf);
-    out.write(buf);
-    out.close();
+
+  protected static void appendToFile(Path p) throws IOException {
+    FileContextTestHelper.appendToFile(fc, p, fileSize / blockSize, 
+        CreateOpts.blockSize(blockSize));
   }
-  
+
   @Before
   public void setUp() throws Exception {
     fc.mkdir(new Path(testBaseDir1()), FileContext.DEFAULT_PERM, true);
     fc.mkdir(new Path(testBaseDir2()), FileContext.DEFAULT_PERM, true);
   }
-  
+
   @After
   public void tearDown() throws Exception { 
     fc.delete(new Path(testBaseDir1()), true);
     fc.delete(new Path(testBaseDir2()), true);
   } 
-  
+
   @Test
   /** The root is not a symlink */
   public void testStatRoot() throws IOException {
     assertFalse(fc.getFileLinkStatus(new Path("/")).isSymlink());    
   }
-  
+
   @Test
   /** Test setWorkingDirectory not resolves symlinks */
   public void testSetWDNotResolvesLinks() throws IOException {
@@ -125,7 +105,7 @@ public abstract class FileContextSymlink
     fc.setWorkingDirectory(linkToDir);
     assertEquals(linkToDir.getName(), fc.getWorkingDirectory().getName());
   }
-  
+
   @Test
   /** Test create a dangling link */
   public void testCreateDanglingLink() throws IOException {

Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java?rev=1035162&r1=1035161&r2=1035162&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java (original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/FileContextTestHelper.java Mon
Nov 15 07:30:23 2010
@@ -17,7 +17,6 @@
  */
 package org.apache.hadoop.fs;
 
-
 import java.io.DataInputStream;
 import java.io.IOException;
 import java.io.FileNotFoundException;
@@ -127,11 +126,25 @@ public final class FileContextTestHelper
     Path path = getTestRootPath(fc, name);
     createFileNonRecursive(fc, path);
   }
+
   public static void createFileNonRecursive(FileContext fc, Path path)
       throws IOException {
     createFile(fc, path, DEFAULT_NUM_BLOCKS, CreateOpts.donotCreateParent());
   }
 
+  public static void appendToFile(FileContext fc, Path path, int numBlocks,
+      CreateOpts... options) throws IOException {
+    BlockSize blockSizeOpt =
+      (BlockSize) CreateOpts.getOpt(CreateOpts.BlockSize.class, options);
+    long blockSize = blockSizeOpt != null ? blockSizeOpt.getValue()
+        : DEFAULT_BLOCK_SIZE;
+    FSDataOutputStream out;
+    out = fc.create(path, EnumSet.of(CreateFlag.APPEND));
+    byte[] data = getFileData(numBlocks, blockSize);
+    out.write(data, 0, data.length);
+    out.close();
+  }
+
   public static boolean exists(FileContext fc, Path p) throws IOException {
     return fc.util().exists(p);
   }
@@ -161,7 +174,7 @@ public final class FileContextTestHelper
   }
   
   public static void writeFile(FileContext fc, Path path, byte b[])
-      throws Exception {
+      throws IOException {
     FSDataOutputStream out = 
       fc.create(path,EnumSet.of(CreateFlag.CREATE), CreateOpts.createParent());
     out.write(b);
@@ -169,13 +182,14 @@ public final class FileContextTestHelper
   }
   
   public static byte[] readFile(FileContext fc, Path path, int len)
-      throws Exception {
+      throws IOException {
     DataInputStream dis = fc.open(path);
     byte[] buffer = new byte[len];
     IOUtils.readFully(dis, buffer, 0, len);
     dis.close();
     return buffer;
   }
+
   public static FileStatus containsPath(FileContext fc, Path path,
       FileStatus[] dirList)
     throws IOException {

Modified: hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java?rev=1035162&r1=1035161&r2=1035162&view=diff
==============================================================================
--- hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java
(original)
+++ hadoop/common/trunk/src/test/core/org/apache/hadoop/fs/TestLocalFSFileContextSymlink.java
Mon Nov 15 07:30:23 2010
@@ -25,6 +25,7 @@ import org.apache.hadoop.fs.FileContext;
 import org.apache.hadoop.fs.permission.FsPermission;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.FileUtil;
+import static org.apache.hadoop.fs.FileContextTestHelper.*;
 import static org.junit.Assert.*;
 import org.junit.Test;
 import org.junit.Before;
@@ -38,12 +39,12 @@ public class TestLocalFSFileContextSymli
     return "file";
   }
 
-  protected String testBaseDir1() {
-    return "/tmp/test1";
+  protected String testBaseDir1() throws IOException {
+    return getAbsoluteTestRootDir(fc)+"/test1";
   }
   
-  protected String testBaseDir2() {
-    return "/tmp/test2";
+  protected String testBaseDir2() throws IOException {
+    return getAbsoluteTestRootDir(fc)+"/test2";
   }
 
   protected URI testURI() {
@@ -158,7 +159,7 @@ public class TestLocalFSFileContextSymli
     // RawLocalFs only maintains the path part, not the URI, and
     // therefore does not support links to other file systems.
     Path anotherFs = new Path("hdfs://host:1000/dir/file");
-    FileUtil.fullyDelete(new File("/tmp/test2/linkToFile"));
+    FileUtil.fullyDelete(new File(linkNew.toString()));
     try {
       fc.createSymlink(anotherFs, linkNew, false);
       fail("Created a local fs link to a non-local fs");



Mime
View raw message