NamingConventionsCheck defaults to considering all subclasses of ESIntegTestCase to be integration tests and doesn't know about ESRestTestCase at all. This is the correct configuration for some parts of our code base, but in the majority of our code base ESIntegTestCase subclasses are treated as unit tests and ESRestTestCase subclasses are the integration tests. It'd be more correct to default the integration test class to ESRestTestCase and override it to ESIntegTestCase in some subprojects like server.
I'm not making a value judgement on whether ESIntegTestCase subclasses should be considered integration tests, unit tests, or internal cluster tests. This is more an observation about how the classes are set up now. If we decide to shift things around at a later time then we can update the check again.
I think an optimal solution to this problem is one that entirely removes the --skip-integ-tests-in-disguise flag.
NamingConventionsCheck defaults to considering all subclasses of
ESIntegTestCaseto be integration tests and doesn't know aboutESRestTestCaseat all. This is the correct configuration for some parts of our code base, but in the majority of our code baseESIntegTestCasesubclasses are treated as unit tests andESRestTestCasesubclasses are the integration tests. It'd be more correct to default the integration test class toESRestTestCaseand override it toESIntegTestCasein some subprojects likeserver.I'm not making a value judgement on whether
ESIntegTestCasesubclasses should be considered integration tests, unit tests, or internal cluster tests. This is more an observation about how the classes are set up now. If we decide to shift things around at a later time then we can update the check again.I think an optimal solution to this problem is one that entirely removes the
--skip-integ-tests-in-disguiseflag.