Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-3762

Refactor SSLTest fixture such that MesosTest can use the same helpers.

Attach filesAttach ScreenshotVotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.26.0
    • test
    • Mesosphere Sprint 21
    • 3

    Description

      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:

      SSLTest <- ::testing::Test
      MesosTest <- TemporaryDirectoryTest <- ::testing::Test
      

      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. 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.
      4. 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.

      The resulting structure should be like:

      MesosTest <- SSLTest <- TemporaryDirectoryTest <- ::testing::Test
      ChildOfSSLTest /
      

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            kaysoky Joseph Wu
            kaysoky Joseph Wu
            Joris Van Remoortere Joris Van Remoortere
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Agile

                Completed Sprint:
                Mesosphere Sprint 21 ended 09/Nov/15
                View on Board

                Slack

                  Issue deployment