Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-5874

Allow choosing latest default codec (not random)

Details

    • Test
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • modules/test-framework
    • None
    • New

    Description

      Within the Lucene/Solr tests, I can see that we want to widely test the various Lucene Codecs. And so a test can use a black-list @SuppressCodecs when certain codecs are known not to work with certain tests. But there is no white-list nor white-list by capabilities (e.g. saying you need term vectors that support payloads).

      In external applications that are using the test infrastructure, this is annoying. An application generally wants to test with only the codec that ships as default with the particular Lucene version they use. Now sure, this could be done by using "-Dtests.codec=Lucene46" , or having your @BeforeClass explicitly do Codec.setDefault(Codec.forName("Lucene46")). But in both these cases, you have to call out a specific version; you can't simply ask for whatever the latest is for the Lucene version you're using that's on your classpath. So what I propose is two things: a whitelist annotation @LuceneTestCase.Codecs and a value "CURRENT" (to align with the LUCENE_CURRENT naming convention). In this way a test could use the latest Codec and not hit a random failure the first time around just because Lucene3x or some other old codec was chosen.

      Attachments

        Activity

          People

            Unassigned Unassigned
            dsmiley David Smiley
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: