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.CoalescingFileOperations;
27  import org.jdtaus.core.io.util.MemoryFileOperations;
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: StructuredFileOperationsCoalescingOneTest.java 8641 2012-09-27 06:45:17Z schulte $
35   */
36  public class StructuredFileOperationsCoalescingOneTest
37      extends StructuredFileTest
38  {
39      //--StructuredFileTest------------------------------------------------------
40  
41      /** {@code FileOperations} backing the {@code StructuredFile}. */
42      private final MemoryFileOperations memOps = new MemoryFileOperations();
43  
44      /** {@code StructuredFile} implementation being tested. */
45      private StructuredFileOperations structuredFile;
46  
47      protected byte[] getStructuredData()
48      {
49          try
50          {
51              this.structuredFile.flush();
52              return this.memOps.getData();
53  
54          }
55          catch ( IOException e )
56          {
57              throw new AssertionError( e );
58          }
59      }
60  
61      protected StructuredFile getStructuredFile()
62      {
63          try
64          {
65              if ( this.structuredFile == null )
66              {
67                  this.structuredFile = new StructuredFileOperations(
68                      StructuredFileTest.BLOCK_SIZE,
69                      new CoalescingFileOperations( this.memOps, 1 ) );
70  
71              }
72  
73              return this.structuredFile;
74          }
75          catch ( IOException e )
76          {
77              throw new AssertionError( e );
78          }
79      }
80  
81      //------------------------------------------------------StructuredFileTest--
82  }