]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - tests/org.simantics.db.tests/src/org/simantics/db/tests/suite/AllTests.java
Added missing org.simantics.db.{tests,testing} plug-ins.
[simantics/platform.git] / tests / org.simantics.db.tests / src / org / simantics / db / tests / suite / AllTests.java
diff --git a/tests/org.simantics.db.tests/src/org/simantics/db/tests/suite/AllTests.java b/tests/org.simantics.db.tests/src/org/simantics/db/tests/suite/AllTests.java
new file mode 100644 (file)
index 0000000..0d80b17
--- /dev/null
@@ -0,0 +1,429 @@
+package org.simantics.db.tests.suite;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import org.simantics.db.tests.common.Configuration;
+
+public class AllTests {
+    static final boolean USE_OK = true;
+    static final boolean USE_FAILED = Configuration.get().useFailedTests;
+    static final boolean USE_ERROR = USE_FAILED;
+    static final boolean USE_STUCK = USE_ERROR;
+    static final boolean KEEP = Configuration.get().transactionKeep;
+    static final boolean KEEP_LINUX = KEEP;
+    public static Test suite() {
+        TestSuite suite = new TestSuite("All tests for org.simantics.db");
+        suite.addTest(AllTests.suiteReadGraph(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        suite.addTest(AllTests.suiteRequest(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        suite.addTest(AllTests.suiteApi(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        suite.addTest(AllTests.suiteClient(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        suite.addTest(AllTests.suiteIssue(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        suite.addTest(AllTests.suitePerf(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        suite.addTest(AllTests.suiteScale(USE_OK, USE_FAILED, USE_ERROR, USE_STUCK));
+        return suite;
+    }
+    public static Test suiteReadGraph(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("ReadGraph tests for org.simantics.db");
+        // Add your own tests here, but do not commit them.
+        // api/delayedWrite
+//        if (ok) suite.addTestSuite(DelayedWriteGraphExceptionHandling.class);
+//        if (error) suite.addTestSuite(DelayedWriteGraphVirtualGraphHandling.class);
+//        if (error) suite.addTestSuite(DelayedWriteRequestCancelHandling.class);
+//        // api/readgraph
+//        if (ok) suite.addTestSuite(AdaptionFailureTest.class);
+//        if (ok) suite.addTestSuite(AdaptTest3.class);
+//        if (ok) suite.addTestSuite(AdaptTest4.class);
+//        if (ok) suite.addTestSuite(AdaptRelatedTest2.class);
+//        if (ok) suite.addTestSuite(AdaptRelatedTest3.class);
+//        if (ok) suite.addTestSuite(AdaptUniqueTest2.class);
+//        // suite.addTestSuite(Ontologies.class);
+//        if (ok) suite.addTestSuite(ForEachObjectTest1.class);
+//        if (ok) suite.addTestSuite(ForObjectSetTest1.class);
+//        if (failed) suite.addTestSuite(GetAccessorTest1.class);
+//        if (ok) suite.addTestSuite(GetAssertedObjectsTest1.class);
+//        if (ok) suite.addTestSuite(GetAssertedObjectsTest2.class);
+//        if (ok) suite.addTestSuite(GetAssertedObjectsTest3.class);
+//        if (ok) suite.addTestSuite(GetAssertedObjectsTest4.class);
+//        if (ok) suite.addTestSuite(GetAssertedObjectsTest5.class);
+//        if (ok) suite.addTestSuite(GetAssertedObjectsTest6.class);
+//        if (error) suite.addTestSuite(GetAssertedObjectsTest7.class);
+//        if (ok) suite.addTestSuite(GetAssertedStatementsTest1.class);
+//        if (ok) suite.addTestSuite(GetAssertedStatementsTest2.class);
+//        if (ok) suite.addTestSuite(GetAssertedStatementsTest3.class);
+//        if (ok) suite.addTestSuite(GetAssertedStatementsTest4.class);
+//        if (ok && !KEEP_LINUX) suite.addTestSuite(GetAssertedStatementsTest5.class);
+//        if (ok) suite.addTestSuite(GetAssertedStatementsTest6.class);
+//        if (error) suite.addTestSuite(GetAssertedStatementsTest7.class);
+//        if (ok) suite.addTestSuite(GetBuiltinTest1.class);
+//        if (ok) suite.addTestSuite(GetInverseTest1.class);
+//        if (ok) suite.addTestSuite(GetInverseTest2.class);
+//        if (ok) suite.addTestSuite(GetInverseTest3.class);
+//        if (ok) suite.addTestSuite(GetInverseTest4.class);
+//        if (ok) suite.addTestSuite(GetObjectsTest1.class);
+//        if (ok) suite.addTestSuite(GetObjectsTest21.class);
+//        if (ok) suite.addTestSuite(GetObjectsTest22.class);
+//        if (error) suite.addTestSuite(GetObjectsTest3.class);
+//        if (ok) suite.addTestSuite(GetObjectsTest4.class);
+//        if (error) suite.addTestSuite(GetObjectsTest5.class);
+//        if (ok) suite.addTestSuite(GetObjectsTest6.class);
+//        if (error) suite.addTestSuite(GetObjectsTest7.class);
+//        if (error) suite.addTestSuite(GetObjectsWithAssertionsTest3.class);
+//        if (ok) suite.addTestSuite(GetObjectsWithAssertionsTest6.class);
+//        if (error) suite.addTestSuite(GetObjectsWithAssertionsTest7.class);
+//        if (ok) suite.addTestSuite(GetPossibleResourceTest1.class);
+//        if (ok) suite.addTestSuite(GetPossibleResourceTest2.class);
+//        if (ok) suite.addTestSuite(GetPossibleURITest1.class);
+//        if (failed) suite.addTestSuite(GetPredicatesTest1.class);
+//        if (failed) suite.addTestSuite(GetPredicatesTest2.class);
+//        if (failed) suite.addTestSuite(GetPredicatesTest3.class);
+//        if (error) suite.addTestSuite(GetPredicatesTest4.class);
+//        if (error) suite.addTestSuite(GetPredicatesWithAssertionsTest6.class);
+//        if (ok) suite.addTestSuite(PredicatePropertiesTest.class);
+//        if (ok) suite.addTestSuite(GetPrincipalTypesTest1.class);
+//        if (ok) suite.addTestSuite(GetPrincipalTypesTest2.class);
+//        if (ok) suite.addTestSuite(GetPrincipalTypesTest3.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest1.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest2.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest23.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest24.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest25.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest26.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest27.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest28.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest29.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest3.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest4.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest5.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest6.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest7.class);
+//        if (error) suite.addTestSuite(GetRelatedValueTest8.class);
+//        if (ok) suite.addTestSuite(GetRelatedValueTest9.class);
+//        if (ok) suite.addTestSuite(GetResourceTest1.class);
+//        if (ok) suite.addTestSuite(GetResourceTest10.class);
+//        if (ok) suite.addTestSuite(GetResourceTest11.class);
+//        if (error) suite.addTestSuite(GetResourceTest12.class);
+//        if (error) suite.addTestSuite(GetResourceTest13.class);
+//        if (error) suite.addTestSuite(GetResourceTest14.class);
+//        if (ok) suite.addTestSuite(GetResourceTest2.class);
+//        if (error) suite.addTestSuite(GetResourceTest3.class);
+//        if (ok) suite.addTestSuite(GetResourceTest4.class);
+//        if (ok) suite.addTestSuite(GetResourceTest5.class);
+//        if (ok) suite.addTestSuite(GetResourceTest6.class);
+//        if (ok) suite.addTestSuite(GetResourceTest7.class);
+//        if (ok) suite.addTestSuite(GetResourceTest8.class);
+//        if (ok) suite.addTestSuite(GetResourceTest9.class);
+//        if (error) suite.addTestSuite(GetSingleObjectTest1.class);
+//        if (error) suite.addTestSuite(GetSingleObjectTest2.class);
+//        if (error) suite.addTestSuite(GetSingleObjectTest21.class);
+//        if (error) suite.addTestSuite(GetSingleObjectTest22.class);
+//        if (ok) suite.addTestSuite(GetSingleObjectTest23.class);
+//        if (error) suite.addTestSuite(GetSingleObjectTest3.class);
+//        if (ok) suite.addTestSuite(GetSingleObjectTest3_bak.class);
+//        if (error) suite.addTestSuite(GetSingleStatementTest21.class);
+//        if (error) suite.addTestSuite(GetSingleStatementTest22.class);
+//        if (ok) suite.addTestSuite(GetSingleStatementTest23.class);
+//        if (error) suite.addTestSuite(GetSingleStatementTest3.class);
+//        if (ok) suite.addTestSuite(GetSingleTypeTest1.class);
+//        if (ok) suite.addTestSuite(GetSingleTypeTest2.class);
+//        if (ok) suite.addTestSuite(GetSingleTypeTest3.class);
+//        if (error) suite.addTestSuite(GetSingleTypeTest7.class);
+//        if (ok) suite.addTestSuite(GetStatementsTest1.class);
+//        if (ok) suite.addTestSuite(GetStatementsTest2.class);
+//        if (error) suite.addTestSuite(GetStatementsTest3.class);
+//        if (ok) suite.addTestSuite(GetStatementsTest4.class);
+//        if (ok) suite.addTestSuite(GetStatementsTest5.class);
+//        if (ok) suite.addTestSuite(GetStatementsTest6.class);
+//        if (error) suite.addTestSuite(GetStatementsTest7.class);
+//        if (error) suite.addTestSuite(GetStatementsWithAssertionsTest3.class);
+//        if (error) suite.addTestSuite(GetStatementsWithAssertionsTest6.class);
+//        if (error) suite.addTestSuite(GetStatementsWithAssertionsTest7.class);
+//        if (ok) suite.addTestSuite(GetSuperrelationsTest1.class);
+//        if (ok) suite.addTestSuite(GetSuperrelationsTest2.class);
+//        if (stuck) suite.addTestSuite(GetSuperrelationsTest3.class);
+//        if (stuck)suite.addTestSuite(GetSuperrelationsTest4.class);
+//        if (error) suite.addTestSuite(GetSupertypesTest1.class);
+//        if (stuck) suite.addTestSuite(GetSupertypesTest2.class);
+//        if (error) suite.addTestSuite(GetSupertypesTest3.class);
+//        if (error) suite.addTestSuite(GetSupertypesTest7.class);
+//        if (ok) suite.addTestSuite(GetTypesTest1.class);
+//        if (ok) suite.addTestSuite(GetTypesTest2.class);
+//        if (ok) suite.addTestSuite(GetTypesTest3.class);
+//        if (ok) suite.addTestSuite(GetTypesTest7.class);
+//        if (ok) suite.addTestSuite(GetURITest1.class);
+//        if (ok) suite.addTestSuite(GetValueTest1.class);
+//        if (ok) suite.addTestSuite(GetValueTest2.class);
+//        if (ok) suite.addTestSuite(GetValueTest22.class);
+//        if (ok) suite.addTestSuite(GetValueTest23.class);
+//        if (ok) suite.addTestSuite(GetValueTest24.class);
+//        if (ok) suite.addTestSuite(GetValueTest25.class);
+//        if (ok) suite.addTestSuite(GetValueTest26.class);
+//        if (ok) suite.addTestSuite(GetValueTest3.class);
+//        if (ok) suite.addTestSuite(GetValueTest4.class);
+//        if (ok) suite.addTestSuite(GetValueTest5.class);
+//        if (ok) suite.addTestSuite(GetValueTest6.class);
+//        if (ok) suite.addTestSuite(HasStatementTest1.class);
+//        if (failed) suite.addTestSuite(HasStatementTest2.class);
+//        if (ok) suite.addTestSuite(HasValueTest1.class);
+//        if (ok) suite.addTestSuite(IsInheritedFromTest1.class);
+//        if (ok) suite.addTestSuite(IsInstanceOfTest1.class);
+//        if (ok) suite.addTestSuite(IsSubrelationOfTest1.class);
+        return suite;
+    }
+    public static Test suiteRequest(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("Request tests for org.simantics.db");
+        // api/request
+//        if (ok) suite.addTestSuite(AsyncTransactionTest.class);
+//        if (ok) suite.addTestSuite(CachedQueryDependencies.class);
+//        if (ok) suite.addTestSuite(ComplexReadWriteQueryTest.class);
+//        if (ok) suite.addTestSuite(GraphSupportTest.class);
+//        if (ok) suite.addTestSuite(MultiListenerTest.class);
+//        if (ok) suite.addTestSuite(NoneListenerTest.class);
+//        if (ok) suite.addTestSuite(NoneListenerTest2.class);
+//        if (ok) suite.addTestSuite(RequestParentTest.class);
+//        if (ok) suite.addTestSuite(RequestParentTest2.class);
+//        if (ok) suite.addTestSuite(RequestParentTest3.class);
+//        if (error) suite.addTestSuite(RequestParentTest4.class);
+//        if (ok) suite.addTestSuite(RequestParentTest5.class);
+//        if (ok) suite.addTestSuite(RequestParentTest6.class);
+//        if (ok) suite.addTestSuite(RequestQueuingTest.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest2.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest3.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest4.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest5.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest6.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest7.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest8.class);
+//        if (ok) suite.addTestSuite(SyncAsyncSyncTest9.class);
+////        suite.addTestSuite(SyncAsyncSyncUtils.class);
+//        if (stuck) suite.addTestSuite(SyncRequestTest.class);
+//        if (stuck) suite.addTestSuite(SyncRequestTest2.class);
+//        if (stuck) suite.addTestSuite(SyncRequestTest3.class);
+//        if (failed) suite.addTestSuite(AsyncProcedureExecuteThrows.class);
+//        if (failed) suite.addTestSuite(ExceptionInEqualsTest.class);
+//        if (failed) suite.addTestSuite(ExceptionInHashCodeTest.class);
+//        if (ok) suite.addTestSuite(GraphSyncAsyncReadPassesDatabaseException.class);
+//        if (ok) suite.addTestSuite(GraphSyncAsyncReadThrowsRuntimeException.class);
+//        if (ok) suite.addTestSuite(GraphSyncReadThrowsDatabaseException.class);
+//        if (ok) suite.addTestSuite(GraphSyncReadThrowsNoSingleResultException.class);
+//        if (ok) suite.addTestSuite(GraphSyncReadThrowsNPE.class);
+//        if (ok) suite.addTestSuite(GraphSyncReadWithProcedureThrowsDatabaseException.class);
+//        if (ok) suite.addTestSuite(GraphSyncReadWithProcedureThrowsNoSingleResultException.class);
+//        if (ok) suite.addTestSuite(GraphSyncReadWithProcedureThrowsNPE.class);
+//        if (failed) suite.addTestSuite(GraphSyncReadWithProcedureThrowsNPEInExecute.class);
+//        if (failed) suite.addTestSuite(ListenerExceptions.class);
+//        if (ok) suite.addTestSuite(RecoveryFromExceptedState.class);
+//        if (ok) suite.addTestSuite(SessionSyncAsyncReadPassesDatabaseException.class);
+//        if (ok) suite.addTestSuite(SessionSyncAsyncReadThrowsRuntimeException.class);
+//        if (ok) suite.addTestSuite(SessionSyncReadThrowsDatabaseException.class);
+//        if (ok) suite.addTestSuite(SessionSyncReadWithProcedureThrowsDatabaseException.class);
+//        if (ok) suite.addTestSuite(SessionSyncReadWithProcedureThrowsNPEInExecute.class);
+//        if (ok) suite.addTestSuite(SessionSyncWriteThrowsDatabaseException.class);
+//        if (ok) suite.addTestSuite(SessionSyncWriteThrowsRuntimeException.class);
+//        if (error) suite.addTestSuite(ExternalRequestTest.class);
+//        if (error) suite.addTestSuite(ExternalRequestTest2.class);
+//        if (error) suite.addTestSuite(ExternalRequestTest3.class);
+//        if (error) suite.addTestSuite(ExternalRequestTest4.class);
+//        if (ok) suite.addTestSuite(DisposedListenerTest.class);
+//        if (ok) suite.addTestSuite(EqualListenerDisposeTest.class);
+//        if (error) suite.addTestSuite(QueryResultCompareTest1.class);
+//        if (error) suite.addTestSuite(ThreadingTest1.class);
+//        if (error) suite.addTestSuite(ThreadingTest2.class);
+        return suite;
+    }
+    public static Test suiteApi(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("Misc api tests for org.simantics.db");
+        // api/misc
+//        if (ok) suite.addTestSuite(RequestProcessorTest1.class);
+//        if (ok) suite.addTestSuite(DataModelTest.class);
+//        if (failed) suite.addTestSuite(GenerateStructuralTest.class);
+//        if (error) suite.addTestSuite(QuerySemanticsTest.class);
+//        if (failed) suite.addTestSuite(RemoveComponent.class);
+//        if (failed) suite.addTestSuite(RenameComponent.class);
+//        if (failed) suite.addTestSuite(SyntheticModellingTest.class);
+//        if (error) suite.addTestSuite(TextIndexingTest.class);
+//        if (error) suite.addTestSuite(WriteOrderTest.class);
+//        if (ok) suite.addTestSuite(CachedDirectPredicatesWithNoCluster.class);
+//        if (ok) suite.addTestSuite(ClaimIntoNewResourceAfterIntermediateClusterCollect.class);
+//        if (ok) suite.addTestSuite(ClaimIntoNewResourceAfterIntermediateClusterCollect2.class);
+//        if (ok) suite.addTestSuite(DenyCollectedResourceTest.class);
+//        if (ok) suite.addTestSuite(DenyCollectedResourceTest2.class);
+//        if (ok) suite.addTestSuite(DenyCollectedResourceTest3.class);
+//        if (ok) suite.addTestSuite(DenyCollectedResourceTest4.class);
+//        if (ok) suite.addTestSuite(ObjectsWithNoClusterWithCachedRelationInfo.class);
+//        if (ok) suite.addTestSuite(QueryCollectedResourceTest.class);
+//        if (ok) suite.addTestSuite(WriteAfterClusterCollectTest.class);
+//        if (ok) suite.addTestSuite(WriteAfterClusterCollectTest2.class);
+//        if (ok) suite.addTestSuite(WriteAfterClusterCollectTest3.class);
+//        if (ok) suite.addTestSuite(WriteIntoCollectedResourceTest.class);
+//        if (ok) suite.addTestSuite(WriteIntoCollectedResourceTest2.class);
+//        if (ok) suite.addTestSuite(WriteIntoCollectedResourceTest3.class);
+//        if (ok) suite.addTestSuite(WriteIntoCollectedResourceTest4.class);
+//        if (ok) suite.addTestSuite(WriteNewResourceIntoCollectedCluster.class);
+//        if (ok) suite.addTestSuite(GetHeadRevisionTest.class);
+//        if (ok) suite.addTestSuite(FetchChangeSetsTest.class);
+//        if (ok) suite.addTestSuite(CleanCollectQueriesTest.class);
+//        if (ok && !KEEP) suite.addTestSuite(RandomAccessIdTest.class);
+//        if (ok && !KEEP) suite.addTestSuite(RandomAccessIdTest1.class);
+//        if (failed) suite.addTestSuite(TransferableGraphSupportTest1.class);
+//        if (ok) suite.addTestSuite(TransferableGraphSupportTest2.class);
+//        if (ok) suite.addTestSuite(RedoTest1.class);
+//        if (ok) suite.addTestSuite(RedoTest2.class);
+//        if (ok) suite.addTestSuite(UndoTest1.class);
+//        if (ok) suite.addTestSuite(UndoTest10.class);
+//        if (ok) suite.addTestSuite(UndoTest11.class);
+//        if (ok) suite.addTestSuite(UndoTest12.class);
+//        if (ok) suite.addTestSuite(UndoTest13.class);
+//        if (ok) suite.addTestSuite(UndoTest14.class);
+//        if (ok) suite.addTestSuite(UndoTest15.class);
+//        if (ok) suite.addTestSuite(UndoTest16.class);
+//        if (ok) suite.addTestSuite(UndoTest2.class);
+//        if (ok) suite.addTestSuite(UndoTest3.class);
+//        if (ok) suite.addTestSuite(UndoTest4.class);
+//        if (ok) suite.addTestSuite(UndoTest5.class);
+//        if (ok) suite.addTestSuite(UndoTest6.class);
+//        if (ok) suite.addTestSuite(UndoTest7.class);
+//        if (ok) suite.addTestSuite(UndoTest8.class);
+//        if (ok) suite.addTestSuite(UndoTest9.class);
+//        if (ok) suite.addTestSuite(PersistentSetValueIntoVirtualResourceTest.class);
+////        suite.addTestSuite(VirtualGraphExample.class);
+//        if (ok) suite.addTestSuite(VirtualGraphSupportListStatementsTest.class);
+//        if (ok) suite.addTestSuite(VirtualGraphTest.class);
+//        if (error) suite.addTestSuite(VirtualGraphTest2.class);
+//        if (error) suite.addTestSuite(VirtualGraphTest3.class);
+//        if (stuck) suite.addTestSuite(VirtualGraphTest4.class);
+//        if (error) suite.addTestSuite(VirtualGraphTest5.class);
+//        if (ok) suite.addTestSuite(VirtualGraphTest6.class);
+//        if (failed) suite.addTestSuite(WriteWithMultipleInverses.class);
+////        suite.addTestSuite(TestLiteral.class);
+//        if (error) suite.addTestSuite(WriteUntypedCustomLiteral.class);
+//        if (ok) suite.addTestSuite(WriteUntypedL0Literal.class);
+//        if (ok) suite.addTestSuite(DataBlobTest.class);
+//        if (ok) suite.addTestSuite(SetValueTest.class);
+//        if (ok) suite.addTestSuite(SetValueTest2.class);
+//        if (ok) suite.addTestSuite(DenyTest1.class);
+//        if (error) suite.addTestSuite(DenyValueTest.class);
+//        if (failed) suite.addTestSuite(SessionWriteExceptionTest.class);
+//        if (ok) suite.addTestSuite(WriteCallbackFailureTest.class);
+//        if (ok && !KEEP_LINUX) suite.addTestSuite(WriteCancelTest.class);
+//        if (ok) suite.addTestSuite(WriteCancelTest2.class);
+//        if (failed) suite.addTestSuite(WriteGraphWriteExceptionTest.class);
+//        if (ok) suite.addTestSuite(WriteMetadataTest.class);
+//        if (ok) suite.addTestSuite(WriteOnlyReadTest.class);
+//        if (ok) suite.addTestSuite(AddStatementTest.class);
+//        if (ok) suite.addTestSuite(FileTest1.class);
+//        if (ok) suite.addTestSuite(FileTest2.class);
+//        if (ok && !KEEP) suite.addTestSuite(WriteIntoBuiltinResourceTest.class);
+        return suite;
+    }
+    public static Test suiteClient(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("Client tests for org.simantics.db");
+        // client
+//        if (ok) suite.addTestSuite(CallTest.class);
+//        if (stuck) suite.addTestSuite(CleanShutdownTest.class);
+//        if (error) suite.addTestSuite(CleanShutdownTest2.class);
+//        if (ok) suite.addTestSuite(ConnectionTest.class);
+//        if (ok) suite.addTestSuite(ConnectionTest1.class);
+//        if (ok) suite.addTestSuite(ConnectionTest2.class);
+//        if (stuck) suite.addTestSuite(ConnectionTest3.class);
+//        if (stuck) suite.addTestSuite(ConnectionTest4.class);
+//        if (stuck) suite.addTestSuite(ConnectionTest5.class);
+//        if (stuck) suite.addTestSuite(ConnectionTest6.class);
+//        if (stuck) suite.addTestSuite(CoreCrashTest.class);
+//        if (ok) suite.addTestSuite(JournalTest.class);
+//        if (error) suite.addTestSuite(JournalTestFail.class);
+//        if (failed) suite.addTestSuite(ProxyTest.class);
+//        if (failed) suite.addTestSuite(PublishTest1.class);
+//        if (failed) suite.addTestSuite(PublishTest2.class);
+//        if (failed) suite.addTestSuite(PublishTest3.class);
+//        if (error) suite.addTestSuite(PublishTest4.class);
+//        if (error) suite.addTestSuite(PublishTest5.class);
+//        if (error) suite.addTestSuite(PublishTest6.class);
+////        suite.addTestSuite(PublishTestCase.class);
+////        suite.addTestSuite(PublishTestOperating.class);
+//        if (ok) suite.addTestSuite(RefreshTest1.class);
+//        if (ok) suite.addTestSuite(RefreshTest2.class);
+//        if (ok) suite.addTestSuite(RefreshTest3.class);
+//        if (error) suite.addTestSuite(RefreshTest4.class);
+//        if (error) suite.addTestSuite(RefreshTest5.class);
+//        if (ok) suite.addTestSuite(ReserveIdsTest1.class);
+//        if (ok) suite.addTestSuite(ReserveIdsTest2.class);
+//        if (ok) suite.addTestSuite(TransactionTest1.class);
+//        if (ok) suite.addTestSuite(TransactionTest2.class);
+//        if (ok) suite.addTestSuite(TransactionTest3.class);
+//        if (stuck) suite.addTestSuite(TransactionTest4.class);
+//        // common code 
+////        suite.addTestSuite(Activator.class);
+////        suite.addTestSuite(ClientOperations.class);
+////        suite.addTestSuite(Configuration.class);
+////        suite.addTestSuite(InitializeDatabaseTest.class);
+////        suite.addTestSuite(Writes.class);
+        return suite;
+    }
+    public static Test suitePerf(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("Perf tests for org.simantics.db");
+        // perf
+//        if (ok) suite.addTestSuite(BufferTest.class);
+//        if (ok) suite.addTestSuite(CastTest.class);
+//        if (ok) suite.addTestSuite(FieldAccessTest.class);
+//        if (error) suite.addTestSuite(MapTest.class);
+//        if (ok) suite.addTestSuite(SynchronizationTest.class);
+//        if (ok) suite.addTestSuite(SynchronizedAccessTest.class);
+//        if (ok) suite.addTestSuite(ThreadLocalTest.class);
+//        if (failed) suite.addTestSuite(CachedQueryTest.class);
+////        suite.addTestSuite(HierarchicalNames.class);
+//        if (ok) suite.addTestSuite(ReadHierarchicalNames.class);
+//        if (ok) suite.addTestSuite(ReadHierarchicalNamesAndTypes.class);
+//        if (ok) suite.addTestSuite(ReadHierarchicalNamesFromVirtualGraph.class);
+//        if (failed) suite.addTestSuite(TransactionTest.class);
+////        suite.addTestSuite(TypeSetAndString.class);
+//        if (ok) suite.addTestSuite(WriteOnlyHierarchicalNames.class);
+//        if (stuck) suite.addTestSuite(WriteReadBigLiteral.class);
+        return suite;
+    }
+    public static Test suiteIssue(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("Issue tests for org.simantics.db");
+        // issues
+//        if (ok) suite.addTestSuite(CommentMetadataWriteTest.class);
+//        if (ok) suite.addTestSuite(Issue3072Test1.class);
+//        if (ok) suite.addTestSuite(Issue3108Test1.class);
+//        if (failed) suite.addTestSuite(Issue3199Test1.class);
+//        if (ok) suite.addTestSuite(Issue3199Test2.class);
+//        if (stuck) suite.addTestSuite(SimanticsBug1659Test1.class);
+//        if (stuck) suite.addTestSuite(SimanticsBug1659Test2.class);
+//        if (stuck) suite.addTestSuite(SimanticsBug1659Test3.class);
+//        if (ok) suite.addTestSuite(SimanticsBug1893Test1.class);
+//        if (ok) suite.addTestSuite(SimanticsBug3114Test.class);
+//        if (ok) suite.addTestSuite(SimanticsBug639Test.class);
+//        if (ok) suite.addTestSuite(SimanticsFeature4007Test1.class);
+//        if (stuck) suite.addTestSuite(SyncWriteReadTest1.class);
+//        if (failed) suite.addTestSuite(TicketTest646.class);
+//        if (ok) suite.addTestSuite(WriteCancelTest3.class);
+//        if (failed) suite.addTestSuite(WriteCancelTest3.class);
+//        if (failed) suite.addTestSuite(WriteCancelTest3.class);
+//        if (failed) suite.addTestSuite(WriteCancelTest3.class);
+        return suite;
+    }
+    public static Test suiteScale(boolean ok, boolean failed, boolean error, boolean stuck) {
+        TestSuite suite = new TestSuite("Scale tests for org.simantics.db");
+        // scale
+//        if (ok && !KEEP_LINUX) suite.addTestSuite(CreateManyClustersTest.class);
+//        if (ok) suite.addTestSuite(CreateManyClustersTest2.class);
+//        if (ok) suite.addTestSuite(LargeCommitTest.class);
+//        if (stuck) suite.addTestSuite(LargeDataTest.class);
+//        if (ok) suite.addTestSuite(LargeImportTest.class);
+//        if (ok) suite.addTestSuite(LargeWrite.class);
+//        if (ok) suite.addTestSuite(WriteHierarchicalNames.class);
+//        if (ok) suite.addTestSuite(WriteOnlyManyClustersTest.class);
+        // suite
+//        suite.addTestSuite(PerformanceTests.class);
+//        suite.addTestSuite(PluginTests.class);
+//        suite.addTestSuite(PluginTests2.class);
+//        suite.addTestSuite(RegressionTests.class);
+//        suite.addTestSuite(RegressionTests2.class);
+//        suite.addTestSuite(StressTests.class);
+//        suite.addTestSuite(TempTests.class);
+        return suite;
+    }
+}