Add support for `tests.enable_mock_modules` to ESIntegTestCase (#24309)
`tests.enable_mock_modules` is a documented but unrespected / unused option to disable all mock modules / pluings during test runs. This will basically site-step mock assertions like check-index on shard closing. This can speed up test-execution dramatically on nodes with slow disks etc. Relates to #24304
This commit is contained in:
parent
92d6b2b60d
commit
e69147a870
|
@ -299,6 +299,7 @@ public abstract class ESIntegTestCase extends ESTestCase {
|
||||||
*/
|
*/
|
||||||
public static final String TESTS_ENABLE_MOCK_MODULES = "tests.enable_mock_modules";
|
public static final String TESTS_ENABLE_MOCK_MODULES = "tests.enable_mock_modules";
|
||||||
|
|
||||||
|
private static final boolean MOCK_MODULES_ENABLED = "true".equals(System.getProperty(TESTS_ENABLE_MOCK_MODULES, "true"));
|
||||||
/**
|
/**
|
||||||
* Threshold at which indexing switches from frequently async to frequently bulk.
|
* Threshold at which indexing switches from frequently async to frequently bulk.
|
||||||
*/
|
*/
|
||||||
|
@ -1882,7 +1883,7 @@ public abstract class ESIntegTestCase extends ESTestCase {
|
||||||
/** Return the mock plugins the cluster should use */
|
/** Return the mock plugins the cluster should use */
|
||||||
protected Collection<Class<? extends Plugin>> getMockPlugins() {
|
protected Collection<Class<? extends Plugin>> getMockPlugins() {
|
||||||
final ArrayList<Class<? extends Plugin>> mocks = new ArrayList<>();
|
final ArrayList<Class<? extends Plugin>> mocks = new ArrayList<>();
|
||||||
if (randomBoolean()) { // sometimes run without those completely
|
if (MOCK_MODULES_ENABLED && randomBoolean()) { // sometimes run without those completely
|
||||||
if (randomBoolean() && addMockTransportService()) {
|
if (randomBoolean() && addMockTransportService()) {
|
||||||
mocks.add(MockTransportService.TestPlugin.class);
|
mocks.add(MockTransportService.TestPlugin.class);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue