org.h2.test.unit
Class TestMathUtils

java.lang.Object
  extended by org.h2.test.TestBase
      extended by org.h2.test.unit.TestMathUtils

public class TestMathUtils
extends TestBase

Tests math utility methods.


Field Summary
 
Fields inherited from class org.h2.test.TestBase
BASE_TEST_DIR, config, start, TEMP_DIR, uniqueId
 
Constructor Summary
TestMathUtils()
           
 
Method Summary
static java.math.BigInteger factorial(int n)
          Calculate the factorial (n!)
static void main(java.lang.String... a)
          Run just this test.
 void test()
          This method will be called by the test framework.
 
Methods inherited from class org.h2.test.TestBase
assertContains, assertEqualDatabases, assertEqualReaders, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEqualStreams, assertFalse, assertFalse, assertKnownException, assertKnownException, assertNull, assertResult, assertResultRowCount, assertResultSetMeta, assertResultSetOrdered, assertSingleValue, assertSmaller, assertStartsWith, assertThrows, assertThrows, assertThrows, assertTrue, assertTrue, crash, createCaller, createCaller, createClassProxy, deleteDb, deleteDb, eatMemory, fail, fail, freeMemory, getBaseDir, getClassPath, getConnection, getConnection, getFilePassword, getMemoryUsed, getPassword, getPassword, getSize, getTestDir, getURL, getUser, init, init, logError, println, printTime, printTimeMemory, readString, runTest, startServerIfRequired, testCase, trace, trace, traceMemory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TestMathUtils

public TestMathUtils()
Method Detail

main

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

Parameters:
a - ignored
Throws:
java.lang.Exception

test

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

Specified by:
test in class TestBase

factorial

public static java.math.BigInteger factorial(int n)
Calculate the factorial (n!) of a number. This implementation uses a naive multiplication loop, and is very slow for large n. For n = 1000, it takes about 10 ms. For n = 8000, it takes about 800 ms.

Parameters:
n - the number
Returns:
the factorial of n