Package org.h2.test.unit

# Class TestFile

java.lang.Object
org.h2.test.TestBase
org.h2.test.unit.TestFile

All Implemented Interfaces:
  `DataHandler`

public class TestFile extends org.h2.test.TestBase implements DataHandler
Tests the in-memory file store.

## Nested Class Summary

## Nested classes/interfaces inherited from class org.h2.test.TestBase

`org.h2.test.TestBase.VoidCallable`

## Field Summary

### Fields inherited from class org.h2.test.TestBase

`BASE_TEST_DIR, config, start, uniqueId`

## Constructor Summary

Constructors
Constructor
Description
`TestFile()`

## Method Summary

Modifier and Type
Method
Description
`void`
`checkPowerOff()`
Check if the simulated power failure occurred.
`void`
`checkWritingAllowed()`
Check if writing is allowed.
`CompareMode`
`getCompareMode()`
Return compare mode.
`String`
`getDatabasePath()`
Get the database path.
`SmallLRUCache<String,String[]>`
`getLobFileListCache()`
Get the lob file list cache if it is used.
`LobStorageInterface`
`getLobStorage()`
Get the lob storage mechanism to use.
`Object`
`getLobSyncObject()`
Get the synchronization object for lob operations.
`int`
`getMaxLengthInplaceLob()`
Get the maximum length of in-place large object
`TempFileDeleter`
`getTempFileDeleter()`
Get the temp file deleter mechanism.
`static void`
`main(String... a)`
Run just this test.
`FileStore`
`openFile(String name, String mode, boolean mustExist)`
Open a file at the given location.
`int`
`readLob(long lobId, byte[] hmac, long offset, byte[] buff, int off, int length)`
Read from a lob.
`void`
`test()`
This method will be called by the test framework.

### Methods inherited from class org.h2.test.TestBase

`assertContains, assertEmpty, assertEqualDatabases, assertEqualReaders, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEqualStreams, assertFalse, assertFalse, assertKnownException, assertKnownException, assertNotContaining, assertNotNull, assertNotNull, assertNull, assertResult, assertResultRowCount, assertResultSetMeta, assertResultSetOrdered, assertResultSetOrdered, assertSame, assertSingleValue, assertSmaller, assertStartsWith, assertThrows, assertThrows, assertThrows, assertThrows, assertThrows, assertThrows, assertThrows, assertThrows, assertTrue, assertTrue, checkErrorCode, crash, createCaller, createFailingStream, eatMemory, execute, execute, fail, fail, freeMemory, getBaseDir, getClassPath, getFilePassword, getJVM, getMemoryUsed, getMemoryUsedBytes, getPassword, getPassword, getPowerOffCount, getSize, getTestDir, getTestName, getUser, init, init, isEnabled, logError, logErrorMessage, println, printTime, printTimeMemory, readString, runTest, setPowerOffCount, testFromMain, throwException, trace, trace, traceMemory`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### TestFile

public TestFile()

## Method Details

### main

public static void main(String... a) throws Exception
Run just this test.

Parameters:
  `a` - ignored
Throws:
  `Exception`

### test

public void test() throws Exception
Description copied from class: `org.h2.test.TestBase`
This method will be called by the test framework.

Specified by:
  `test` in class `org.h2.test.TestBase`
Throws:
  `Exception` - if an exception in the test occurs

### checkPowerOff

public void checkPowerOff()
Description copied from interface: `DataHandler`
Check if the simulated power failure occurred. This call will decrement the countdown.

Specified by:
  `checkPowerOff` in interface `DataHandler`

### checkWritingAllowed

public void checkWritingAllowed()
Description copied from interface: `DataHandler`
Check if writing is allowed.

Specified by:
  `checkWritingAllowed` in interface `DataHandler`

### getDatabasePath

public String getDatabasePath()
Description copied from interface: `DataHandler`
Get the database path.

Specified by:
  `getDatabasePath` in interface `DataHandler`
Returns:
  the database path

### getLobSyncObject

public Object getLobSyncObject()
Description copied from interface: `DataHandler`
Get the synchronization object for lob operations.

Specified by:
  `getLobSyncObject` in interface `DataHandler`
Returns:
  the synchronization object

### getMaxLengthInplaceLob

public int getMaxLengthInplaceLob()
Description copied from interface: `DataHandler`
Get the maximum length of in-place large object

Specified by:
  `getMaxLengthInplaceLob` in interface `DataHandler`
Returns:
  the maximum size

### openFile

public FileStore openFile(String name, String mode, boolean mustExist)
Description copied from interface: `DataHandler`
Open a file at the given location.

Specified by:
  `openFile` in interface `DataHandler`
Parameters:
  `name` - the file name
  `mode` - the mode
  `mustExist` - whether the file must already exist
Returns:
  the file

### getLobFileListCache

public SmallLRUCache<String,String[]> getLobFileListCache()
Description copied from interface: `DataHandler`
Get the lob file list cache if it is used.

Specified by:
  `getLobFileListCache` in interface `DataHandler`
Returns:
  the cache or null

### getTempFileDeleter

public TempFileDeleter getTempFileDeleter()
Description copied from interface: `DataHandler`
Get the temp file deleter mechanism.

Specified by:
  `getTempFileDeleter` in interface `DataHandler`
Returns:
  the temp file deleter

### getLobStorage

public LobStorageInterface getLobStorage()
Description copied from interface: `DataHandler`
Get the lob storage mechanism to use.

Specified by:
  `getLobStorage` in interface `DataHandler`
Returns:
  the lob storage mechanism

### readLob

public int readLob(long lobId, byte[] hmac, long offset, byte[] buff, int off, int length)
Description copied from interface: `DataHandler`
Read from a lob.

Specified by:
  `readLob` in interface `DataHandler`
Parameters:
  `lobId` - the lob id
  `hmac` - the message authentication code
  `offset` - the offset within the lob
  `buff` - the target buffer
  `off` - the offset within the target buffer
  `length` - the number of bytes to read
Returns:
  the number of bytes read

### getCompareMode

public CompareMode getCompareMode()
Description copied from interface: `DataHandler`
Return compare mode.

Specified by:
  `getCompareMode` in interface `DataHandler`
Returns:
  Compare mode.