[
https://issues.apache.org/jira/browse/GROOVY-7717?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Shil Sinha updated GROOVY-7717:
-------------------------------
Description:
When StaticTypeCheckingTestCase#shouldFailWithMessages(String, String...) is
called with multiple message arguments, the call returns successfully if both
of the following are true:
1) at least one argument is contained in a collected error message
2) the number of message arguments equals the number of collected errors
This causes tests to erroneously pass, even if they don't result in all of the
desired errors. For example,
TypeCheckingExtensionsTest#testPrecompiledExtensionNotExtendingTypeCheckingDSL
currently passes even though
PrecompiledExtensionNotExtendingTypeCheckingDSL#onMethodSelection throws a
MissingPropertyException (which is converted to a compilation error in
CompilationUnit#applyToPrimaryClassNodes) instead of actually adding the
intended static type error.
was:
When StaticTypeCheckingTestCase#shouldFailWithMessages(String, String...) is
called with multiple message arguments, the call returns successfully if:
1) at least one argument is contained in a collected error message
2) the number of message arguments equals the number of collected errors
This causes tests to erroneously pass, even if they don't result in all of the
desired errors. For example,
TypeCheckingExtensionsTest#testPrecompiledExtensionNotExtendingTypeCheckingDSL
currently passes even though
PrecompiledExtensionNotExtendingTypeCheckingDSL#onMethodSelection throws a
MissingPropertyException (which is converted to a compilation error in
CompilationUnit#applyToPrimaryClassNodes) instead of actually adding the
intended static type error.
> StaticTypeCheckingTestCase#shouldFailWithMessages erroneously passes
> --------------------------------------------------------------------
>
> Key: GROOVY-7717
> URL: https://issues.apache.org/jira/browse/GROOVY-7717
> Project: Groovy
> Issue Type: Bug
> Components: Static Type Checker
> Affects Versions: 2.4.5
> Reporter: Shil Sinha
> Assignee: Shil Sinha
>
> When StaticTypeCheckingTestCase#shouldFailWithMessages(String, String...) is
> called with multiple message arguments, the call returns successfully if both
> of the following are true:
> 1) at least one argument is contained in a collected error message
> 2) the number of message arguments equals the number of collected errors
> This causes tests to erroneously pass, even if they don't result in all of
> the desired errors. For example,
> TypeCheckingExtensionsTest#testPrecompiledExtensionNotExtendingTypeCheckingDSL
> currently passes even though
> PrecompiledExtensionNotExtendingTypeCheckingDSL#onMethodSelection throws a
> MissingPropertyException (which is converted to a compilation error in
> CompilationUnit#applyToPrimaryClassNodes) instead of actually adding the
> intended static type error.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)