Skip to content

Commit 068ce09

Browse files
vogellaakurtakov
authored andcommitted
Convert terminal test suites from JUnit3/4 to JUnit5
This commit converts the following terminal test suite classes from JUnit3/4 to JUnit5: - AutomatedTestSuite.java: Converted from JUnit3 TestCase with suite() method to JUnit5 @Suite/@SelectClasses - AutomatedPluginTestSuite.java: Converted from JUnit3 TestCase with suite() method to JUnit5 @Suite/@SelectClasses - terminal.internal.emulator.AllTestSuite.java: Converted from JUnit3 TestCase with suite() method to JUnit5 @Suite/@SelectClasses - terminal.internal.model.AllTestSuite.java: Converted from JUnit3 TestCase with suite() method to JUnit5 @Suite/@SelectClasses - terminal.model.AllTestSuite.java: Converted from JUnit3 TestCase/JUnit4TestAdapter to JUnit5 @Suite/@SelectClasses Updated MANIFEST.MF to include org.junit.platform.suite.api import for JUnit5 suite annotations. All tests (336) continue to pass after the conversion. The migration follows the pattern of replacing: - extends TestCase with plain classes - static Test suite() methods with @suite and @SelectClasses annotations - suite.addTestSuite() calls with class references in @SelectClasses - JUnit4TestAdapter usage with direct class references The test functionality remains identical, only the test runner framework has been modernized.
1 parent ead5e72 commit 068ce09

File tree

6 files changed

+52
-105
lines changed

6 files changed

+52
-105
lines changed

terminal/tests/org.eclipse.terminal.test/META-INF/MANIFEST.MF

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,6 @@ Export-Package: org.eclipse.terminal.internal.connector;x-internal:=true,
2121
org.eclipse.terminal.model,
2222
org.eclipse.terminal.test
2323
Import-Package: org.junit.jupiter.api;version="[5.9.3,6.0.0)",
24-
org.junit.jupiter.api.function;version="[5.9.3,6.0.0)"
24+
org.junit.jupiter.api.function;version="[5.9.3,6.0.0)",
25+
org.junit.platform.suite.api;version="[1.9.3,2.0.0)"
2526
Automatic-Module-Name: org.eclipse.terminal.test

terminal/tests/org.eclipse.terminal.test/src/org/eclipse/terminal/internal/emulator/AllTestSuite.java

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,27 +12,17 @@
1212
*******************************************************************************/
1313
package org.eclipse.terminal.internal.emulator;
1414

15-
import junit.framework.Test;
16-
import junit.framework.TestCase;
17-
import junit.framework.TestSuite;
15+
import org.junit.platform.suite.api.SelectClasses;
16+
import org.junit.platform.suite.api.Suite;
1817

1918
/**
2019
* Terminal emulator test cases.
2120
* Runs in emulator package to allow access to default visible items.
2221
*/
23-
public class AllTestSuite extends TestCase {
24-
public AllTestSuite() {
25-
super(null);
26-
}
27-
28-
public AllTestSuite(String name) {
29-
super(name);
30-
}
31-
32-
public static Test suite() {
33-
TestSuite suite = new TestSuite(AllTestSuite.class.getName());
34-
suite.addTestSuite(VT100EmulatorBackendTest.class);
35-
return suite;
36-
}
22+
@Suite
23+
@SelectClasses({ //
24+
VT100EmulatorBackendTest.class, //
25+
})
26+
public class AllTestSuite {
3727

3828
}

terminal/tests/org.eclipse.terminal.test/src/org/eclipse/terminal/internal/model/AllTestSuite.java

Lines changed: 16 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -12,36 +12,26 @@
1212
*******************************************************************************/
1313
package org.eclipse.terminal.internal.model;
1414

15-
import junit.framework.Test;
16-
import junit.framework.TestCase;
17-
import junit.framework.TestSuite;
15+
import org.junit.platform.suite.api.SelectClasses;
16+
import org.junit.platform.suite.api.Suite;
1817

1918
/**
2019
* Internal Terminal Model test cases.
2120
* Runs in internal model package to allow access to default visible items.
2221
*/
23-
public class AllTestSuite extends TestCase {
24-
public AllTestSuite() {
25-
super(null);
26-
}
27-
28-
public AllTestSuite(String name) {
29-
super(name);
30-
}
31-
32-
public static Test suite() {
33-
TestSuite suite = new TestSuite(AllTestSuite.class.getName());
34-
suite.addTestSuite(SnapshotChangesTest.class);
35-
suite.addTestSuite(SynchronizedTerminalTextDataTest.class);
36-
suite.addTestSuite(TerminalTextDataFastScrollTest.class);
37-
suite.addTestSuite(TerminalTextDataFastScrollMaxHeightTest.class);
38-
suite.addTestSuite(TerminalTextDataPerformanceTest.class);
39-
suite.addTestSuite(TerminalTextDataSnapshotTest.class);
40-
suite.addTestSuite(TerminalTextDataSnapshotWindowTest.class);
41-
suite.addTestSuite(TerminalTextDataStoreTest.class);
42-
suite.addTestSuite(TerminalTextDataTest.class);
43-
suite.addTestSuite(TerminalTextDataWindowTest.class);
44-
return suite;
45-
}
22+
@Suite
23+
@SelectClasses({ //
24+
SnapshotChangesTest.class, //
25+
SynchronizedTerminalTextDataTest.class, //
26+
TerminalTextDataFastScrollTest.class, //
27+
TerminalTextDataFastScrollMaxHeightTest.class, //
28+
TerminalTextDataPerformanceTest.class, //
29+
TerminalTextDataSnapshotTest.class, //
30+
TerminalTextDataSnapshotWindowTest.class, //
31+
TerminalTextDataStoreTest.class, //
32+
TerminalTextDataTest.class, //
33+
TerminalTextDataWindowTest.class, //
34+
})
35+
public class AllTestSuite {
4636

4737
}

terminal/tests/org.eclipse.terminal.test/src/org/eclipse/terminal/model/AllTestSuite.java

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,29 +12,18 @@
1212
*******************************************************************************/
1313
package org.eclipse.terminal.model;
1414

15-
import junit.framework.JUnit4TestAdapter;
16-
import junit.framework.Test;
17-
import junit.framework.TestCase;
18-
import junit.framework.TestSuite;
15+
import org.junit.platform.suite.api.SelectClasses;
16+
import org.junit.platform.suite.api.Suite;
1917

2018
/**
2119
* Public Terminal Model test cases.
2220
* Runs in internal model package to allow access to default visible items.
2321
*/
24-
public class AllTestSuite extends TestCase {
25-
public AllTestSuite() {
26-
super(null);
27-
}
28-
29-
public AllTestSuite(String name) {
30-
super(name);
31-
}
32-
33-
public static Test suite() {
34-
TestSuite suite = new TestSuite(AllTestSuite.class.getName());
35-
suite.addTest(new JUnit4TestAdapter(TerminalColorUITest.class));
36-
suite.addTestSuite(StyleTest.class);
37-
return suite;
38-
}
22+
@Suite
23+
@SelectClasses({ //
24+
TerminalColorUITest.class, //
25+
StyleTest.class, //
26+
})
27+
public class AllTestSuite {
3928

4029
}

terminal/tests/org.eclipse.terminal.test/src/org/eclipse/terminal/test/AutomatedPluginTestSuite.java

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,27 +13,17 @@
1313

1414
package org.eclipse.terminal.test;
1515

16-
import junit.framework.Test;
17-
import junit.framework.TestCase;
18-
import junit.framework.TestSuite;
16+
import org.junit.platform.suite.api.SelectClasses;
17+
import org.junit.platform.suite.api.Suite;
1918

2019
/**
2120
* Master Test Suite to run all Terminal plug-in tests.
2221
*/
23-
public class AutomatedPluginTestSuite extends TestCase {
24-
/**
25-
* Call each AllTestSuite class from each of the test packages.
26-
*/
27-
public static Test suite() {
28-
TestSuite suite = new TestSuite(AutomatedPluginTestSuite.class.getName());
29-
//These tests require Eclipse Platform to be up
30-
suite.addTestSuite(org.eclipse.terminal.internal.connector.TerminalConnectorPluginTest.class);
31-
suite.addTestSuite(org.eclipse.terminal.internal.connector.TerminalConnectorFactoryTest.class);
32-
33-
//These tests must run as plain JUnit because they require access
34-
//to "package" protected methods
35-
//suite.addTest(AutomatedTestSuite.suite());
36-
return suite;
37-
}
22+
@Suite
23+
@SelectClasses({ //
24+
org.eclipse.terminal.internal.connector.TerminalConnectorPluginTest.class, //
25+
org.eclipse.terminal.internal.connector.TerminalConnectorFactoryTest.class, //
26+
})
27+
public class AutomatedPluginTestSuite {
3828

3929
}

terminal/tests/org.eclipse.terminal.test/src/org/eclipse/terminal/test/AutomatedTestSuite.java

Lines changed: 11 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -12,35 +12,22 @@
1212
*******************************************************************************/
1313
package org.eclipse.terminal.test;
1414

15-
import junit.framework.Test;
16-
import junit.framework.TestCase;
17-
import junit.framework.TestSuite;
15+
import org.junit.platform.suite.api.SelectClasses;
16+
import org.junit.platform.suite.api.Suite;
1817

1918
/**
2019
* Master test suite to run all terminal unit tests.
2120
*/
22-
public class AutomatedTestSuite extends TestCase {
21+
@Suite
22+
@SelectClasses({ //
23+
org.eclipse.terminal.internal.emulator.AllTestSuite.class, //
24+
org.eclipse.terminal.internal.model.AllTestSuite.class, //
25+
org.eclipse.terminal.model.AllTestSuite.class, //
26+
org.eclipse.terminal.internal.connector.TerminalConnectorTest.class, //
27+
org.eclipse.terminal.internal.connector.TerminalToRemoteInjectionOutputStreamTest.class, //
28+
})
29+
public class AutomatedTestSuite {
2330

2431
public static final String PI_TERMINAL_TESTS = "org.eclipse.terminal.test"; //$NON-NLS-1$
2532

26-
public AutomatedTestSuite() {
27-
super(null);
28-
}
29-
30-
public AutomatedTestSuite(String name) {
31-
super(name);
32-
}
33-
34-
/**
35-
* Call each AllTestSuite class from each of the test packages.
36-
*/
37-
public static Test suite() {
38-
TestSuite suite = new TestSuite(AutomatedTestSuite.class.getName());
39-
suite.addTest(org.eclipse.terminal.internal.emulator.AllTestSuite.suite());
40-
suite.addTest(org.eclipse.terminal.internal.model.AllTestSuite.suite());
41-
suite.addTest(org.eclipse.terminal.model.AllTestSuite.suite());
42-
suite.addTestSuite(org.eclipse.terminal.internal.connector.TerminalConnectorTest.class);
43-
suite.addTestSuite(org.eclipse.terminal.internal.connector.TerminalToRemoteInjectionOutputStreamTest.class);
44-
return suite;
45-
}
4633
}

0 commit comments

Comments
 (0)