Search in sources :

Example 26 with PrintStream

use of java.io.PrintStream in project hadoop by apache.

the class TestLs method processPathDirOrderLengthReverse.

// check reverse length order (-S -r options)
@Test
public void processPathDirOrderLengthReverse() throws IOException {
    TestFile testfile01 = new TestFile("testDirectory", "testFile01");
    TestFile testfile02 = new TestFile("testDirectory", "testFile02");
    TestFile testfile03 = new TestFile("testDirectory", "testFile03");
    TestFile testfile04 = new TestFile("testDirectory", "testFile04");
    TestFile testfile05 = new TestFile("testDirectory", "testFile05");
    TestFile testfile06 = new TestFile("testDirectory", "testFile06");
    // set file length in different order to file names
    long length = 1234567890;
    testfile01.setLength(length + 10);
    testfile02.setLength(length + 30);
    testfile03.setLength(length + 20);
    testfile04.setLength(length + 60);
    testfile05.setLength(length + 50);
    testfile06.setLength(length + 40);
    TestFile testDir = new TestFile("", "testDirectory");
    testDir.setIsDir(true);
    testDir.addContents(testfile01, testfile02, testfile03, testfile04, testfile05, testfile06);
    LinkedList<PathData> pathData = new LinkedList<PathData>();
    pathData.add(testDir.getPathData());
    PrintStream out = mock(PrintStream.class);
    Ls ls = new Ls();
    ls.out = out;
    LinkedList<String> options = new LinkedList<String>();
    options.add("-S");
    options.add("-r");
    ls.processOptions(options);
    String lineFormat = TestFile.computeLineFormat(pathData);
    ls.processArguments(pathData);
    InOrder inOrder = inOrder(out);
    inOrder.verify(out).println("Found 6 items");
    inOrder.verify(out).println(testfile01.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile03.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile02.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile06.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile05.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile04.formatLineMtime(lineFormat));
    verifyNoMoreInteractions(out);
}
Also used : PrintStream(java.io.PrintStream) InOrder(org.mockito.InOrder) LinkedList(java.util.LinkedList) Test(org.junit.Test)

Example 27 with PrintStream

use of java.io.PrintStream in project hadoop by apache.

the class TestLs method processPathDirOrderAtimeReverse.

// check reverse access time order (-u -t -r options)
@Test
public void processPathDirOrderAtimeReverse() throws IOException {
    TestFile testfile01 = new TestFile("testDirectory", "testFile01");
    TestFile testfile02 = new TestFile("testDirectory", "testFile02");
    TestFile testfile03 = new TestFile("testDirectory", "testFile03");
    TestFile testfile04 = new TestFile("testDirectory", "testFile04");
    TestFile testfile05 = new TestFile("testDirectory", "testFile05");
    TestFile testfile06 = new TestFile("testDirectory", "testFile06");
    // set file atime in different order to file names
    testfile01.setAtime(NOW.getTime() + 10);
    testfile02.setAtime(NOW.getTime() + 30);
    testfile03.setAtime(NOW.getTime() + 20);
    testfile04.setAtime(NOW.getTime() + 60);
    testfile05.setAtime(NOW.getTime() + 50);
    testfile06.setAtime(NOW.getTime() + 40);
    // set file mtime in different order to atime
    testfile01.setMtime(NOW.getTime() + 60);
    testfile02.setMtime(NOW.getTime() + 50);
    testfile03.setMtime(NOW.getTime() + 20);
    testfile04.setMtime(NOW.getTime() + 30);
    testfile05.setMtime(NOW.getTime() + 10);
    testfile06.setMtime(NOW.getTime() + 40);
    TestFile testDir = new TestFile("", "testDirectory");
    testDir.setIsDir(true);
    testDir.addContents(testfile01, testfile02, testfile03, testfile04, testfile05, testfile06);
    LinkedList<PathData> pathData = new LinkedList<PathData>();
    pathData.add(testDir.getPathData());
    PrintStream out = mock(PrintStream.class);
    Ls ls = new Ls();
    ls.out = out;
    LinkedList<String> options = new LinkedList<String>();
    options.add("-t");
    options.add("-u");
    options.add("-r");
    ls.processOptions(options);
    String lineFormat = TestFile.computeLineFormat(pathData);
    ls.processArguments(pathData);
    InOrder inOrder = inOrder(out);
    inOrder.verify(out).println("Found 6 items");
    inOrder.verify(out).println(testfile01.formatLineAtime(lineFormat));
    inOrder.verify(out).println(testfile03.formatLineAtime(lineFormat));
    inOrder.verify(out).println(testfile02.formatLineAtime(lineFormat));
    inOrder.verify(out).println(testfile06.formatLineAtime(lineFormat));
    inOrder.verify(out).println(testfile05.formatLineAtime(lineFormat));
    inOrder.verify(out).println(testfile04.formatLineAtime(lineFormat));
    verifyNoMoreInteractions(out);
}
Also used : PrintStream(java.io.PrintStream) InOrder(org.mockito.InOrder) LinkedList(java.util.LinkedList) Test(org.junit.Test)

Example 28 with PrintStream

use of java.io.PrintStream in project hadoop by apache.

the class TestLs method processPathDirsOrderMtime.

// check multiple directories are order independently
@Test
public void processPathDirsOrderMtime() throws IOException {
    TestFile testfile01 = new TestFile("testDirectory01", "testFile01");
    TestFile testfile02 = new TestFile("testDirectory01", "testFile02");
    TestFile testfile03 = new TestFile("testDirectory01", "testFile03");
    TestFile testfile04 = new TestFile("testDirectory02", "testFile04");
    TestFile testfile05 = new TestFile("testDirectory02", "testFile05");
    TestFile testfile06 = new TestFile("testDirectory02", "testFile06");
    // set file mtime in different order to file names
    testfile01.setMtime(NOW.getTime() + 10);
    testfile02.setMtime(NOW.getTime() + 30);
    testfile03.setMtime(NOW.getTime() + 20);
    testfile04.setMtime(NOW.getTime() + 60);
    testfile05.setMtime(NOW.getTime() + 40);
    testfile06.setMtime(NOW.getTime() + 50);
    TestFile testDir01 = new TestFile("", "testDirectory01");
    testDir01.setIsDir(true);
    testDir01.addContents(testfile01, testfile02, testfile03);
    TestFile testDir02 = new TestFile("", "testDirectory02");
    testDir02.setIsDir(true);
    testDir02.addContents(testfile04, testfile05, testfile06);
    LinkedList<PathData> pathData = new LinkedList<PathData>();
    pathData.add(testDir01.getPathData());
    pathData.add(testDir02.getPathData());
    PrintStream out = mock(PrintStream.class);
    Ls ls = new Ls();
    ls.out = out;
    LinkedList<String> options = new LinkedList<String>();
    options.add("-t");
    ls.processOptions(options);
    String lineFormat = TestFile.computeLineFormat(pathData);
    ls.processArguments(pathData);
    InOrder inOrder = inOrder(out);
    inOrder.verify(out).println("Found 3 items");
    inOrder.verify(out).println(testfile02.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile03.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile01.formatLineMtime(lineFormat));
    inOrder.verify(out).println("Found 3 items");
    inOrder.verify(out).println(testfile04.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile06.formatLineMtime(lineFormat));
    inOrder.verify(out).println(testfile05.formatLineMtime(lineFormat));
    verifyNoMoreInteractions(out);
}
Also used : PrintStream(java.io.PrintStream) InOrder(org.mockito.InOrder) LinkedList(java.util.LinkedList) Test(org.junit.Test)

Example 29 with PrintStream

use of java.io.PrintStream in project hadoop by apache.

the class TestKMSAudit method setUp.

@Before
public void setUp() throws IOException {
    originalOut = System.err;
    memOut = new ByteArrayOutputStream();
    filterOut = new FilterOut(memOut);
    capturedOut = new PrintStream(filterOut);
    System.setErr(capturedOut);
    InputStream is = ThreadUtil.getResourceAsStream("log4j-kmsaudit.properties");
    PropertyConfigurator.configure(is);
    IOUtils.closeStream(is);
    Configuration conf = new Configuration();
    this.kmsAudit = new KMSAudit(conf);
}
Also used : PrintStream(java.io.PrintStream) Configuration(org.apache.hadoop.conf.Configuration) InputStream(java.io.InputStream) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Before(org.junit.Before)

Example 30 with PrintStream

use of java.io.PrintStream in project hadoop by apache.

the class TestOfflineImageViewer method testFileDistributionCalculator.

@Test
public void testFileDistributionCalculator() throws IOException {
    ByteArrayOutputStream output = new ByteArrayOutputStream();
    PrintStream o = new PrintStream(output);
    new FileDistributionCalculator(new Configuration(), 0, 0, false, o).visit(new RandomAccessFile(originalFsimage, "r"));
    o.close();
    String outputString = output.toString();
    Pattern p = Pattern.compile("totalFiles = (\\d+)\n");
    Matcher matcher = p.matcher(outputString);
    assertTrue(matcher.find() && matcher.groupCount() == 1);
    int totalFiles = Integer.parseInt(matcher.group(1));
    assertEquals(NUM_DIRS * FILES_PER_DIR + filesECCount + 1, totalFiles);
    p = Pattern.compile("totalDirectories = (\\d+)\n");
    matcher = p.matcher(outputString);
    assertTrue(matcher.find() && matcher.groupCount() == 1);
    int totalDirs = Integer.parseInt(matcher.group(1));
    // totalDirs includes root directory
    assertEquals(dirCount + 1, totalDirs);
    FileStatus maxFile = Collections.max(writtenFiles.values(), new Comparator<FileStatus>() {

        @Override
        public int compare(FileStatus first, FileStatus second) {
            return first.getLen() < second.getLen() ? -1 : ((first.getLen() == second.getLen()) ? 0 : 1);
        }
    });
    p = Pattern.compile("maxFileSize = (\\d+)\n");
    matcher = p.matcher(output.toString("UTF-8"));
    assertTrue(matcher.find() && matcher.groupCount() == 1);
    assertEquals(maxFile.getLen(), Long.parseLong(matcher.group(1)));
}
Also used : PrintStream(java.io.PrintStream) Pattern(java.util.regex.Pattern) FileStatus(org.apache.hadoop.fs.FileStatus) Configuration(org.apache.hadoop.conf.Configuration) RandomAccessFile(java.io.RandomAccessFile) Matcher(java.util.regex.Matcher) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Test(org.junit.Test)

Aggregations

PrintStream (java.io.PrintStream)1582 ByteArrayOutputStream (java.io.ByteArrayOutputStream)687 Test (org.junit.Test)481 File (java.io.File)276 IOException (java.io.IOException)257 FileOutputStream (java.io.FileOutputStream)177 ArrayList (java.util.ArrayList)78 FileNotFoundException (java.io.FileNotFoundException)75 OutputStream (java.io.OutputStream)72 Before (org.junit.Before)57 BufferedReader (java.io.BufferedReader)50 Date (java.util.Date)44 Map (java.util.Map)44 BufferedOutputStream (java.io.BufferedOutputStream)41 Path (org.apache.hadoop.fs.Path)41 UnsupportedEncodingException (java.io.UnsupportedEncodingException)40 Matchers.anyString (org.mockito.Matchers.anyString)37 InputStreamReader (java.io.InputStreamReader)35 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)35 HashMap (java.util.HashMap)32