Author: clebert.suconic(a)jboss.com
Date: 2009-10-29 22:01:08 -0400 (Thu, 29 Oct 2009)
New Revision: 8168
Modified:
trunk/tests/src/org/hornetq/tests/integration/client/CompactingTest.java
trunk/tests/src/org/hornetq/tests/integration/journal/AIOJournalCompactTest.java
trunk/tests/src/org/hornetq/tests/integration/journal/AIOSequentialFileFactoryTest.java
trunk/tests/src/org/hornetq/tests/integration/journal/MultiThreadCompactorTest.java
trunk/tests/src/org/hornetq/tests/integration/journal/RealAIOJournalImplTest.java
trunk/tests/src/org/hornetq/tests/performance/journal/RealJournalImplAIOTest.java
trunk/tests/src/org/hornetq/tests/timing/core/journal/impl/RealJournalImplAIOTest.java
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/MultiThreadAsynchronousFileTest.java
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/SleepTest.java
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/TimedBufferTest.java
trunk/tests/src/org/hornetq/tests/util/UnitTestCase.java
Log:
https://jira.jboss.org/jira/browse/HORNETQ-175 - I had those changes on a separate branch
to fix the testsuite. Merging it now
Modified: trunk/tests/src/org/hornetq/tests/integration/client/CompactingTest.java
===================================================================
--- trunk/tests/src/org/hornetq/tests/integration/client/CompactingTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++ trunk/tests/src/org/hornetq/tests/integration/client/CompactingTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -16,6 +16,7 @@
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.atomic.AtomicInteger;
+import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.buffers.ChannelBuffers;
import org.hornetq.core.client.ClientConsumer;
import org.hornetq.core.client.ClientMessage;
@@ -70,12 +71,15 @@
public void testCleanupAIO() throws Throwable
{
- for (int i = 0; i < 3; i++)
+ if (AsynchronousFileImpl.isLoaded())
{
- System.out.println("Test # " + i);
- internalTestCleanup(JournalType.ASYNCIO);
- tearDown();
- setUp();
+ for (int i = 0; i < 3; i++)
+ {
+ System.out.println("Test # " + i);
+ internalTestCleanup(JournalType.ASYNCIO);
+ tearDown();
+ setUp();
+ }
}
}
Modified:
trunk/tests/src/org/hornetq/tests/integration/journal/AIOJournalCompactTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/integration/journal/AIOJournalCompactTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/integration/journal/AIOJournalCompactTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -16,6 +16,8 @@
import java.io.File;
+import junit.framework.TestSuite;
+
import org.hornetq.core.config.impl.ConfigurationImpl;
import org.hornetq.core.journal.SequentialFileFactory;
import org.hornetq.core.journal.impl.AIOSequentialFileFactory;
@@ -30,6 +32,13 @@
public class AIOJournalCompactTest extends NIOJournalCompactTest
{
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(AIOJournalCompactTest.class);
+ }
+
+
// Constants -----------------------------------------------------
// Attributes ----------------------------------------------------
Modified:
trunk/tests/src/org/hornetq/tests/integration/journal/AIOSequentialFileFactoryTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/integration/journal/AIOSequentialFileFactoryTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/integration/journal/AIOSequentialFileFactoryTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -16,7 +16,8 @@
import java.io.File;
import java.nio.ByteBuffer;
-import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
+import junit.framework.TestSuite;
+
import org.hornetq.core.journal.SequentialFile;
import org.hornetq.core.journal.SequentialFileFactory;
import org.hornetq.core.journal.impl.AIOSequentialFileFactory;
@@ -31,20 +32,17 @@
*/
public class AIOSequentialFileFactoryTest extends SequentialFileFactoryTestBase
{
-
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(AIOSequentialFileFactoryTest.class);
+ }
+
@Override
protected void setUp() throws Exception
{
super.setUp();
- if (!AsynchronousFileImpl.isLoaded())
- {
- fail(String.format("libAIO is not loaded on %s %s %s",
- System.getProperty("os.name"),
- System.getProperty("os.arch"),
- System.getProperty("os.version")));
- }
-
File file = new File(getTestDir());
deleteDirectory(file);
Modified:
trunk/tests/src/org/hornetq/tests/integration/journal/MultiThreadCompactorTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/integration/journal/MultiThreadCompactorTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/integration/journal/MultiThreadCompactorTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -21,6 +21,7 @@
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
+import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.buffers.ChannelBuffers;
import org.hornetq.core.client.ClientConsumer;
import org.hornetq.core.client.ClientMessage;
@@ -34,6 +35,7 @@
import org.hornetq.core.journal.RecordInfo;
import org.hornetq.core.journal.impl.AIOSequentialFileFactory;
import org.hornetq.core.journal.impl.JournalImpl;
+import org.hornetq.core.journal.impl.NIOSequentialFileFactory;
import org.hornetq.core.server.HornetQServer;
import org.hornetq.core.server.JournalType;
import org.hornetq.tests.util.ServiceTestBase;
@@ -88,7 +90,7 @@
internalTestProduceAndConsume();
stopServer();
- AIOSequentialFileFactory factory = new
AIOSequentialFileFactory(getJournalDir());
+ NIOSequentialFileFactory factory = new
NIOSequentialFileFactory(getJournalDir());
JournalImpl journal = new
JournalImpl(ConfigurationImpl.DEFAULT_JOURNAL_FILE_SIZE,
2,
0,
@@ -97,8 +99,10 @@
"hornetq-data",
"hq",
100);
+
List<RecordInfo> committedRecords = new ArrayList<RecordInfo>();
List<PreparedTransactionInfo> preparedTransactions = new
ArrayList<PreparedTransactionInfo>();
+
journal.start();
journal.load(committedRecords, preparedTransactions, null);
@@ -324,6 +328,10 @@
private void setupServer(JournalType journalType) throws Exception, HornetQException
{
+ if (!AsynchronousFileImpl.isLoaded())
+ {
+ journalType = JournalType.NIO;
+ }
if (server == null)
{
Configuration config = createDefaultConfig(true);
Modified:
trunk/tests/src/org/hornetq/tests/integration/journal/RealAIOJournalImplTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/integration/journal/RealAIOJournalImplTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/integration/journal/RealAIOJournalImplTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -15,6 +15,8 @@
import java.io.File;
+import junit.framework.TestSuite;
+
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.config.impl.ConfigurationImpl;
import org.hornetq.core.journal.SequentialFileFactory;
@@ -38,6 +40,12 @@
public class RealAIOJournalImplTest extends JournalImplTestUnit
{
private static final Logger log = Logger.getLogger(RealAIOJournalImplTest.class);
+
+ public static TestSuite suite()
+ {
+ // Ignore tests if AIO is not installed
+ return createAIOTestSuite(RealAIOJournalImplTest.class);
+ }
@Override
protected void setUp() throws Exception
Modified:
trunk/tests/src/org/hornetq/tests/performance/journal/RealJournalImplAIOTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/performance/journal/RealJournalImplAIOTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/performance/journal/RealJournalImplAIOTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -15,6 +15,8 @@
import java.io.File;
+import junit.framework.TestSuite;
+
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.journal.SequentialFileFactory;
import org.hornetq.core.journal.impl.AIOSequentialFileFactory;
@@ -31,19 +33,18 @@
public class RealJournalImplAIOTest extends JournalImplTestUnit
{
private static final Logger log = Logger.getLogger(RealJournalImplAIOTest.class);
-
+
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(RealJournalImplAIOTest.class);
+ }
+
+
@Override
protected void setUp() throws Exception
{
super.setUp();
-
- if (!AsynchronousFileImpl.isLoaded())
- {
- fail(String.format("libAIO is not loaded on %s %s %s",
- System.getProperty("os.name"),
- System.getProperty("os.arch"),
- System.getProperty("os.version")));
- }
}
protected SequentialFileFactory getFileFactory() throws Exception
Modified:
trunk/tests/src/org/hornetq/tests/timing/core/journal/impl/RealJournalImplAIOTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/timing/core/journal/impl/RealJournalImplAIOTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/timing/core/journal/impl/RealJournalImplAIOTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -15,6 +15,8 @@
import java.io.File;
+import junit.framework.TestSuite;
+
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.journal.SequentialFileFactory;
import org.hornetq.core.journal.impl.AIOSequentialFileFactory;
@@ -30,31 +32,27 @@
public class RealJournalImplAIOTest extends JournalImplTestUnit
{
private static final Logger log = Logger.getLogger(RealJournalImplAIOTest.class);
-
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(RealJournalImplAIOTest.class);
+ }
+
@Override
protected void setUp() throws Exception
{
super.setUp();
-
- if (!AsynchronousFileImpl.isLoaded())
- {
- fail(String.format("libAIO is not loaded on %s %s %s",
- System.getProperty("os.name"),
- System.getProperty("os.arch"),
- System.getProperty("os.version")));
- }
}
-
+
protected SequentialFileFactory getFileFactory() throws Exception
{
File file = new File(getTestDir());
-
+
deleteDirectory(file);
-
- file.mkdir();
-
+
+ file.mkdir();
+
return new AIOSequentialFileFactory(getTestDir());
}
-
-}
+}
Modified: trunk/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -24,6 +24,8 @@
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicInteger;
+import junit.framework.TestSuite;
+
import org.hornetq.core.asyncio.AIOCallback;
import org.hornetq.core.asyncio.BufferCallback;
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
@@ -42,6 +44,11 @@
* */
public class AsynchronousFileTest extends AIOTestBase
{
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(AsynchronousFileTest.class);
+ }
private static final Logger log = Logger.getLogger(AsynchronousFileTest.class);
Modified:
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/MultiThreadAsynchronousFileTest.java
===================================================================
---
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/MultiThreadAsynchronousFileTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++
trunk/tests/src/org/hornetq/tests/unit/core/asyncio/MultiThreadAsynchronousFileTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -21,6 +21,8 @@
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicInteger;
+import junit.framework.TestSuite;
+
import org.hornetq.core.asyncio.AIOCallback;
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.logging.Logger;
@@ -38,6 +40,11 @@
* */
public class MultiThreadAsynchronousFileTest extends AIOTestBase
{
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(MultiThreadAsynchronousFileTest.class);
+ }
static Logger log = Logger.getLogger(MultiThreadAsynchronousFileTest.class);
Modified: trunk/tests/src/org/hornetq/tests/unit/core/asyncio/SleepTest.java
===================================================================
--- trunk/tests/src/org/hornetq/tests/unit/core/asyncio/SleepTest.java 2009-10-29 17:45:42
UTC (rev 8167)
+++ trunk/tests/src/org/hornetq/tests/unit/core/asyncio/SleepTest.java 2009-10-30 02:01:08
UTC (rev 8168)
@@ -15,8 +15,10 @@
package org.hornetq.tests.unit.core.asyncio;
import junit.framework.TestCase;
+import junit.framework.TestSuite;
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
+import org.hornetq.tests.util.UnitTestCase;
/**
* A SleepTest
@@ -25,7 +27,7 @@
*
*
*/
-public class SleepTest extends TestCase
+public class SleepTest extends UnitTestCase
{
// Constants -----------------------------------------------------
@@ -33,6 +35,11 @@
// Attributes ----------------------------------------------------
// Static --------------------------------------------------------
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(SleepTest.class);
+ }
// Constructors --------------------------------------------------
Modified: trunk/tests/src/org/hornetq/tests/unit/core/asyncio/TimedBufferTest.java
===================================================================
--- trunk/tests/src/org/hornetq/tests/unit/core/asyncio/TimedBufferTest.java 2009-10-29
17:45:42 UTC (rev 8167)
+++ trunk/tests/src/org/hornetq/tests/unit/core/asyncio/TimedBufferTest.java 2009-10-30
02:01:08 UTC (rev 8168)
@@ -19,6 +19,8 @@
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
+import junit.framework.TestSuite;
+
import org.hornetq.core.asyncio.AIOCallback;
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.asyncio.impl.TimedBuffer;
@@ -40,7 +42,13 @@
// Attributes ----------------------------------------------------
// Static --------------------------------------------------------
+
+ public static TestSuite suite()
+ {
+ return createAIOTestSuite(TimedBufferTest.class);
+ }
+
// Constructors --------------------------------------------------
// Public --------------------------------------------------------
Modified: trunk/tests/src/org/hornetq/tests/util/UnitTestCase.java
===================================================================
--- trunk/tests/src/org/hornetq/tests/util/UnitTestCase.java 2009-10-29 17:45:42 UTC (rev
8167)
+++ trunk/tests/src/org/hornetq/tests/util/UnitTestCase.java 2009-10-30 02:01:08 UTC (rev
8168)
@@ -41,12 +41,14 @@
import javax.transaction.xa.Xid;
import junit.framework.TestCase;
+import junit.framework.TestSuite;
import org.hornetq.core.asyncio.impl.AsynchronousFileImpl;
import org.hornetq.core.buffers.ChannelBuffers;
import org.hornetq.core.client.ClientMessage;
import org.hornetq.core.client.ClientSession;
import org.hornetq.core.exception.HornetQException;
+import org.hornetq.core.journal.impl.AIOSequentialFileFactory;
import org.hornetq.core.logging.Logger;
import org.hornetq.core.postoffice.Binding;
import org.hornetq.core.postoffice.Bindings;
@@ -189,6 +191,23 @@
return str.toString();
}
+ protected static TestSuite createAIOTestSuite(Class<?> clazz)
+ {
+ TestSuite suite = new TestSuite(clazz.getName() + " testsuite");
+
+ if (AIOSequentialFileFactory.isSupported())
+ {
+ suite.addTestSuite(clazz);
+ }
+ else
+ {
+ // System.out goes towards JUnit report
+ System.out.println("Test " + clazz.getName() + " ignored as AIO
is not available");
+ }
+
+ return suite;
+ }
+
public static String dumpBytes(byte[] bytes)
{
StringBuffer buff = new StringBuffer();