Annotation Type DefaultLocale
@DefaultLocale is a JUnit Jupiter extension to change the value
returned by Locale.getDefault() for a test execution.
The Locale to set as the default locale can be
configured in several ways:
- using a
language tag - using a
Locale.BuilderLocale.Builder} together with- a language
- a language and a county
- a language, a county, and a variant
Please keep in mind the the Locale.Builder does a syntax check, if you use a variant!
The given string must match the BCP 47 (or more detailed RFC 5646) syntax.
If a language tag is set, none of the other fields must be set. Otherwise an
ExtensionConfigurationException will
be thrown. Specifying a country() but no language(), or a
variant() but no country() and language() will
also cause an ExtensionConfigurationException. After the annotated
element has been executed, the default Locale will be restored to
its original value.
@DefaultLocale can be used on the method and on the class level. It
is inherited from higher-level containers, but can only be used once per method
or class. If a class is annotated, the configured Locale will be the
default Locale for all tests inside that class. Any method level
configurations will override the class level default Locale.
During
parallel test execution,
all tests annotated with DefaultLocale, ReadsDefaultLocale, and WritesDefaultLocale
are scheduled in a way that guarantees correctness under mutation of shared global state.
For more details and examples, see
the documentation on @DefaultLocale and @DefaultTimeZone.
- Since:
- 0.2
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionAn ISO 3166 alpha-2 country code or a UN M.49 numeric-3 area code.An ISO 639 alpha-2 or alpha-3 language code, or a language subtag up to 8 characters in length.A language tag string as specified by IETF BCP 47.An IETF BCP 47 language string that matches the RFC 5646 syntax.
-
Element Details
-
value
String valueA language tag string as specified by IETF BCP 47. SeeLocale.forLanguageTag(String)for more information about valid language tag values.- Since:
- 0.3
- Default:
""
-
language
-
country
-
variant
-