View Javadoc

1   /*
2    *  jDTAUS Core Utilities
3    *  Copyright (C) 2005 Christian Schulte
4    *  <cs@schulte.it>
5    *
6    *  This library is free software; you can redistribute it and/or
7    *  modify it under the terms of the GNU Lesser General Public
8    *  License as published by the Free Software Foundation; either
9    *  version 2.1 of the License, or any later version.
10   *
11   *  This library is distributed in the hope that it will be useful,
12   *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14   *  Lesser General Public License for more details.
15   *
16   *  You should have received a copy of the GNU Lesser General Public
17   *  License along with this library; if not, write to the Free Software
18   *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
19   *
20   */
21  package org.jdtaus.core.io.util.test;
22  
23  import java.io.IOException;
24  import org.jdtaus.core.io.StructuredFile;
25  import org.jdtaus.core.io.it.StructuredFileTest;
26  import org.jdtaus.core.io.util.MemoryFileOperations;
27  import org.jdtaus.core.io.util.ReadAheadFileOperations;
28  import org.jdtaus.core.io.util.StructuredFileOperations;
29  
30  /**
31   * Testcase for {@code StructuredFileOperations} implementations.
32   *
33   * @author <a href="mailto:cs@schulte.it">Christian Schulte</a>
34   * @version $JDTAUS: StructuredFileOperationsReadAheadOneTest.java 8641 2012-09-27 06:45:17Z schulte $
35   */
36  public class StructuredFileOperationsReadAheadOneTest extends StructuredFileTest
37  {
38      //--StructuredFileTest------------------------------------------------------
39  
40      /** {@code FileOperations} backing the {@code StructuredFile}. */
41      private final MemoryFileOperations memOps = new MemoryFileOperations();
42  
43      /** {@code StructuredFile} implementation being tested. */
44      private StructuredFileOperations structuredFile;
45  
46      protected byte[] getStructuredData()
47      {
48          try
49          {
50              this.structuredFile.flush();
51              return this.memOps.getData();
52          }
53          catch ( IOException e )
54          {
55              throw new AssertionError( e );
56          }
57      }
58  
59      protected StructuredFile getStructuredFile()
60      {
61          try
62          {
63              if ( this.structuredFile == null )
64              {
65                  this.structuredFile = new StructuredFileOperations(
66                      StructuredFileTest.BLOCK_SIZE,
67                      new ReadAheadFileOperations( this.memOps, 1 ) );
68  
69              }
70  
71              return this.structuredFile;
72          }
73          catch ( IOException e )
74          {
75              throw new AssertionError( e );
76          }
77      }
78  
79      //------------------------------------------------------StructuredFileTest--
80  }