Joseph Wu created MESOS-3762: -------------------------------- Summary: Refactor SSLTest fixture such that MesosTest can use the same helpers. Key: MESOS-3762 URL: https://issues.apache.org/jira/browse/MESOS-3762 Project: Mesos Issue Type: Task Components: test Reporter: Joseph Wu Assignee: Joseph Wu
In order to write tests that exercise SSL with other components of Mesos, such as the HTTP scheduler library, we need to use the setup/teardown logic found in the {{SSLTest}} fixture. Currently, the test fixtures have separate inheritance structures like this: {code} SSLTest <- ::testing::Test MesosTest <- TemporaryDirectoryTest <- ::testing::Test {code} where {{::testing::Test}} is a gtest class. The plan is the following: 1) Change {{SSLTest}} to inherit from {{TemporaryDirectoryTest}}. This will require moving the setup (generation of keys and certs) from {{SetUpTestCase}} to {{SetUp}}. At the same time, *some* of the cleanup logic in the SSLTest will not be needed. 2) Move the logic of generating keys/certs into helpers, so that individual tests can call them when needed, much like {{MesosTest}}. 3) Have {{MesosTest}} inherit from {{SSLTest}} (which might be renamed during the refactor). If Mesos is not compiled with {{--enable-ssl}}, then {{SSLTest}} could be {{#ifdef}}'d into any empty class. 4) Write a child class of {{SSLTest}} which has the same functionality as the existing {{SSLTest}}, for use by the existing tests that rely on {{SSLTest}} or the {{RegistryClientTest}}. The resulting structure should be like: {code} MesosTest <- SSLTest <- TemporaryDirectoryTest <- ::testing::Test ChildOfSSLTest / {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)