Annotation Interface RandomizeSSL


@Documented @Inherited @Retention(RUNTIME) @Target(TYPE) public @interface RandomizeSSL
Marker annotation indicating when SSL Randomization should be used for a test class, and if so what the typical odds of using SSL should for that test class.
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    A simple data structure for encapsulating the effective values to be used when randomizing SSL in a test, based on the configured values in the RandomizeSSL annotation.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    double
    Odds (as ratio relative to 1) that SSL should be selected in a typical run.
    Comment to inlcude when logging details of SSL randomization
    double
    Odds (as ratio relative to 1) that SSL should be selected in a typical run.
    double
    A shorthand option for controlling both ssl() and clientAuth() with a single numeric value, For example: @RandomizeSSL(0.5).
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final double
     
  • Field Details

  • Element Details

    • reason

      String reason
      Comment to inlcude when logging details of SSL randomization
      Default:
      ""
    • ssl

      double ssl
      Odds (as ratio relative to 1) that SSL should be selected in a typical run. Must either be betwen 0.0 and 1.0 (inclusively) or NaN in which case a sensible should be used. Actual Odds used for randomization may be higher depending on runner options such as tests.multiplier or tests.nightly
      See Also:
      • DEFAULT_ODDS
      • LuceneTestCase.TEST_NIGHTLY
      • LuceneTestCase.RANDOM_MULTIPLIER
      Default:
      0.0/0.0
    • clientAuth

      double clientAuth
      Odds (as ratio relative to 1) that SSL should be selected in a typical run. Must either be betwen 0.0 and 1.0 (inclusively) or NaN in which case the effective value of ssl() should be used. Actual Odds used for randomization may be higher depending on runner options such as tests.multiplier or tests.nightly

      NOTE: clientAuth is useless unless ssl is also in used, but we randomize it independently just in case it might find bugs in our test/ssl client code (ie: attempting to use SSL w/client cert to non-ssl servers)

      See Also:
      • DEFAULT_ODDS
      • LuceneTestCase.TEST_NIGHTLY
      • LuceneTestCase.RANDOM_MULTIPLIER
      Default:
      0.0/0.0
    • value

      double value
      A shorthand option for controlling both ssl() and clientAuth() with a single numeric value, For example: @RandomizeSSL(0.5).

      Ignored if ssl() is set explicitly.

      Default:
      0.0/0.0