Surefire Report

Summary

[Summary] [Package List] [Test Cases]


Tests Errors Failures Skipped Success Rate Time
133 0 0 13 90.226% 1.806

Note: failures are anticipated and checked for with assertions while errors are unanticipated.


Package List

[Summary] [Package List] [Test Cases]


Package Tests Errors Failures Skipped Success Rate Time
info.magnolia.i18nsystem.setup 8 0 0 0 100% 0.066
info.magnolia.i18nsystem.tools 1 0 0 1 0% 0
info.magnolia.i18nsystem.proxytoys 33 0 0 4 87.879% 0.056
info.magnolia.i18nsystem 54 0 0 4 92.593% 0.559
info.magnolia.i18nsystem.bytebudddy 21 0 0 4 80.952% 1.112
info.magnolia.i18nsystem.util 16 0 0 0 100% 0.013

Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.

info.magnolia.i18nsystem.setup

Class Tests Errors Failures Skipped Success Rate Time
AbstractRemoveHardcodedI18nPropertiesTaskTest 2 0 0 0 100% 0.05
RemoveHardcodedI18nPropertiesFromSubappsTaskTest 3 0 0 0 100% 0.011
RemoveHardcodedI18nPropertiesFromDialogsTaskTest 3 0 0 0 100% 0.005

info.magnolia.i18nsystem.tools

Class Tests Errors Failures Skipped Success Rate Time
GenerateTranslationFilesImplTest 1 0 0 1 0% 0

info.magnolia.i18nsystem.proxytoys

Class Tests Errors Failures Skipped Success Rate Time
MethodsAnnotatedWithTest 4 0 0 0 100% 0.003
ChildDecoratorTest 4 0 0 0 100% 0.012
ReturnsAnnotatedTypeArgumentTest 7 0 0 0 100% 0.001
ProxytoysI18nizerTest 18 0 0 4 77.778% 0.04

info.magnolia.i18nsystem

Class Tests Errors Failures Skipped Success Rate Time
DefaultMessageBundlesLoaderReloadTest 3 0 0 1 66.667% 0.059
DefaultMessageBundlesLoaderTest 5 0 0 1 80% 0.029
TranslationServiceImplTest 25 0 0 0 100% 0.4
AbstractI18nKeyGeneratorTest 10 0 0 0 100% 0.058
SimpleTranslatorTest 8 0 0 2 75% 0.012
I18nKeyGeneratorFactoryTest 3 0 0 0 100% 0.001

info.magnolia.i18nsystem.bytebudddy

Class Tests Errors Failures Skipped Success Rate Time
ByteBuddyI18nizerTest 21 0 0 4 80.952% 1.112

info.magnolia.i18nsystem.util

Class Tests Errors Failures Skipped Success Rate Time
MessageFormatterUtilsTest 3 0 0 0 100% 0.004
GenericsUtilsTest 4 0 0 0 100% 0.003
AnnotationUtilsTest 4 0 0 0 100% 0.004
LocaleUtilsTest 5 0 0 0 100% 0.002

Test Cases

[Summary] [Package List] [Test Cases]

MethodsAnnotatedWithTest

includesMethodOnSuperclass 0.002
doesNotIncludeOtherRandomMethod 0
includesMethodOnSelf 0
includesMethodOnInterface 0

DefaultMessageBundlesLoaderReloadTest

makeSureMessagesAreAlsoRemovedWhenUnderlyingFileIsRemoved 0.043
whenEncounteringDuplicateKeyTheFirstValueIsUsed 0
Ignored until MAGNOLIA-6927 is fixed: potential issues related to OS
makeSureBundlesAreReloadedWhenResourcesChange 0.014

ChildDecoratorTest

decorateList 0.001
decoratedListIsModifiable 0.001
decorateCollection 0.001
decorateMap 0.008

AbstractRemoveHardcodedI18nPropertiesTaskTest

removeHardcodedI18nPropertiesUnderAppNode 0.047
leaveOtherPropertiesAlone 0.001

RemoveHardcodedI18nPropertiesFromSubappsTaskTest

removeI18nPropertiesFromSubapps 0.007
removeHardcodedI18nPropertiesUnderAppNode 0.001
leaveOtherPropertiesAlone 0.001

ByteBuddyI18nizerTest

methodAnnotatedInADeepSuperInterface 0.731
i18NTextFallback 0.109
istInsideOfParametrisedType 0.036
doesNotConflictWithCGLib 0.036
decorateEnum 0
currently can't proxy enums because they're final. The use-case would be to provide 'typed' static messages; maybe we can have another api, e.g SimpleTranslator - see MAGNOLIA-5296
i18nizerCanProxyIfObjectAlreadyProxiedBySthgElse 0.011
decorateWithNullObjectDoesNotThrowException 0.001
testWithSingleChildObject 0.02
blowsIfObjectIsAlreadyProxiedByI18nizer 0.014
testWithDeeperChildren 0.021
testSimpleObject 0.007
i18nTextAnnotationOnNonStringType 0
Currently makes no sense - un-ignore the day we find a real use-case
canFormatMessagesForMethodsWithArguments 0
Not implemented yet - not sure we want this
decoratedMapShouldAllowToPutNewObjectsAndDecorateThem 0
Not implemented yet
decoratedObjectsCanBeClonedWithClonerLib 0.013
nullChildJustReturnsNull 0.008
testWithChildren 0.013
objectsClonedWithClonerLibCanBeDecorated 0.008
defaultValuesSetInConstructorDoNotOverrideValuesAfterProxying 0.003
testWithChildrenInMap 0.014
testWithExistingValuesBeforeDecoration 0.011

RemoveHardcodedI18nPropertiesFromDialogsTaskTest

removeI18nPropertiesFromDialogs 0.001
removeHardcodedI18nPropertiesUnderAppNode 0.001
leaveOtherPropertiesAlone 0.001

MessageFormatterUtilsTest

invalidMessageWithDoubledSingleQuoteAfterChoice 0
invalidMessageWithSingleQuotes 0.001
validMessageWithDoubledSingleQuote 0.001

DefaultMessageBundlesLoaderTest

testUTF8CharactersAreReadProperly 0.003
sanitiseHtmlContent 0.013
bundlesLoaderLoadsAllLocales 0.007
doesNotSanitiseFormattingRelatedHtmlContent 0.005
proveMessageFormatChoiceSyntaxIsBrokenByHtmlSanitation 0
Hopefully at some point we can change this test into "respectMessageFormatChoiceSyntax" :) - see LANG-42

GenericsUtilsTest

getGenericTypeOfReturnType 0
returnsObjectForWildcards 0
sanityChecks 0.001
returnsLowerBoundForExtends 0

ReturnsAnnotatedTypeArgumentTest

includesSimpleGetter 0
doesNotIncludeGetterWhereReturnTypeIsNotAnnotatedEvenIfMethodItselfIsAnnotated 0
includesMapOfAnnotatedTypeValues 0
includesInheritedMethods 0
includesListOfAnnotatedTypes 0
doesNotIncludeGetterWhereReturnTypeIsNotAnnotated 0
canNotIncludeMapOfAnnotatedTypeValues 0

ProxytoysI18nizerTest

decorateChildWithNullObjectDoesNotThrowException 0
decorateEnum 0
currently can't proxy enums because they're final. The use-case would be to provide 'typed' static messages; maybe we can have another api, e.g SimpleTranslator - see MAGNOLIA-5296
i18nizerCanProxyIfObjectAlreadyProxiedBySthgElse 0
decorateWithNullObjectDoesNotThrowException 0
testWithSingleChildObject 0.001
blowsIfObjectIsAlreadyProxiedByI18nizer 0.001
testWithDeeperChildren 0.004
testSimpleObject 0.001
i18nTextAnnotationOnNonStringType 0
Currently makes no sense - un-ignore the day we find a real use-case
canFormatMessagesForMethodsWithArguments 0
Not implemented yet - not sure we want this
decoratedMapShouldAllowToPutNewObjectsAndDecorateThem 0
Not implemented yet
decoratedObjectsCanBeClonedWithClonerLib 0.022
nullChildJustReturnsNull 0.001
testWithChildren 0.002
objectsClonedWithClonerLibCanBeDecorated 0.001
defaultValuesSetInConstructorDoNotOverrideValuesAfterProxying 0.003
testWithChildrenInMap 0.002
testWithExistingValuesBeforeDecoration 0.001

AnnotationUtilsTest

getAnnotationWorksOnClassImplementingInterface 0.002
getAnnotationWorksOnSubclass 0
getAnnotationWorksOnInterface 0
getAnnotationWorksOnClassDirectlyAnnotated 0

GenerateTranslationFilesImplTest

generateTranslationFilesAndEverythingElse 0
skipped

LocaleUtilsTest

resolveLocaleIsLenientWithLowercaseCountryCode 0
resolveLocaleReturnsLanguageLocale 0
resolveLocaleReturnsLanguageCountryLocale 0
resolveLocaleReturnsLanguageCountryVariantLocale 0
resolveLocaleReturnsDefaultLocale 0

TranslationServiceImplTest

messageWithBasenameAndLocale 0.149
nullKey 0.008
messageNotFound 0.006
messageWithSwissGermanVariantLocale 0.007
messageWithBasenameAndLocaleFallsBackToDefaultLocaleIfNotFound 0.009
messageFallsBackToClosestAvailableMessage 0.009
debugNewI18n 0.013
messageFallsBackToDefaultLanguage 0.022
messageWithFrenchLocale 0.016
debugNewI18nMissingTranslation 0.012
debugOldI18n 0.019
messageWithNullKeys 0.012
messageWithBasename 0.007
messageWithSwissGermanLocale 0.007
shouldPreferUserLocaleWithSecondaryKey 0.007
messageNotFoundWithBasename 0.008
messageAvailableOnlyInEnglishWithSystemFallbackLanguageSetAsEnglish 0.006
handleLegacyTranslationSanitation 0.015
messageWithBasenameAndLocaleFallsBackToGlobalBundleIfNotFound 0.011
messageFallsBackToDefautLocaleFromAVariantLocale 0.006
messageFallsBackToAvailableMessageFromVariantToCountry 0.005
messageWithNoKeys 0.011
isDebugReturnsFalseWhenI18nModuleProviderIsNotReady 0.014
messageWithGermanLocale 0.006
givenBasenameFallbacksToDefaultLegacy 0.009

AbstractI18nKeyGeneratorTest

ancestorsFromList 0.028
getDifferentBundlenamesForEachChild 0.012
addKeyConsidersLabelAsAnOptionalSuffix 0.002
getNullBundlenameWhenNoneIsDefined 0.003
getRootBundlenameWhenNoOtherIsDefined 0.002
getIdOrNameForUnknownRoot 0.002
getRoot 0.001
ancestorsFromSimpleChain 0.001
getRootKeyGenerator 0.002
getAncestorKeyGenerators 0.001

SimpleTranslatorTest

keyWithPrintfFormat 0
Ignored for now but I would like to support the printf format too eventually
singleKey 0.003
extraTestForConditionsAndPlurals 0.003
keyWithPrintfFormatMultipleArgs 0
Ignored for now but I would like to support the printf format too eventually
testTranslateShouldNotFailOnInvalidI18nMessage 0.001
formatAccordingToLocale 0.002
keyWithMessageFormat 0
keyWithMessageFormatMultipleArgs 0.001

I18nKeyGeneratorFactoryTest

newKeyGeneratorFor 0
multipleAnnotationsInHierarchy 0
multipleGeneratorsInHierarchy 0

Failure Details

[Summary] [Package List] [Test Cases]


whenEncounteringDuplicateKeyTheFirstValueIsUsed
skipped: Ignored until MAGNOLIA-6927 is fixed: potential issues related to OS
decorateEnum
skipped: currently can't proxy enums because they're final. The use-case would be to provide 'typed' static messages; maybe we can have another api, e.g SimpleTranslator - see MAGNOLIA-5296
i18nTextAnnotationOnNonStringType
skipped: Currently makes no sense - un-ignore the day we find a real use-case
canFormatMessagesForMethodsWithArguments
skipped: Not implemented yet - not sure we want this
decoratedMapShouldAllowToPutNewObjectsAndDecorateThem
skipped: Not implemented yet
proveMessageFormatChoiceSyntaxIsBrokenByHtmlSanitation
skipped: Hopefully at some point we can change this test into "respectMessageFormatChoiceSyntax" :) - see LANG-42
decorateEnum
skipped: currently can't proxy enums because they're final. The use-case would be to provide 'typed' static messages; maybe we can have another api, e.g SimpleTranslator - see MAGNOLIA-5296
i18nTextAnnotationOnNonStringType
skipped: Currently makes no sense - un-ignore the day we find a real use-case
canFormatMessagesForMethodsWithArguments
skipped: Not implemented yet - not sure we want this
decoratedMapShouldAllowToPutNewObjectsAndDecorateThem
skipped: Not implemented yet
generateTranslationFilesAndEverythingElse
skipped: skipped
keyWithPrintfFormat
skipped: Ignored for now but I would like to support the printf format too eventually
keyWithPrintfFormatMultipleArgs
skipped: Ignored for now but I would like to support the printf format too eventually