[
https://issues.apache.org/jira/browse/GROOVY-11814?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18042205#comment-18042205
]
ASF GitHub Bot commented on GROOVY-11814:
-----------------------------------------
eric-milles commented on code in PR #2350:
URL: https://github.com/apache/groovy/pull/2350#discussion_r2581335642
##########
src/test/groovy/org/codehaus/groovy/transform/CanonicalComponentsTransformTest.groovy:
##########
@@ -564,7 +564,7 @@ class CanonicalComponentsTransformTest extends
GroovyShellTestCase {
// GROOVY-4570
void testToStringForEnums() {
- assert Color.PURPLE.toString() ==
'org.codehaus.groovy.transform.Color(r:255, g:0, b:255)'
+ assert Color.PURPLE.toString() == 'PURPLE(r:255, g:0, b:255)'
Review Comment:
If there are no fields/properties, can it print "PURPLE" instead of
"PURPLE()"?
##########
src/test/groovy/org/codehaus/groovy/transform/CanonicalComponentsTransformTest.groovy:
##########
@@ -564,7 +564,7 @@ class CanonicalComponentsTransformTest extends
GroovyShellTestCase {
// GROOVY-4570
void testToStringForEnums() {
- assert Color.PURPLE.toString() ==
'org.codehaus.groovy.transform.Color(r:255, g:0, b:255)'
+ assert Color.PURPLE.toString() == 'PURPLE(r:255, g:0, b:255)'
Review Comment:
If there are no fields/properties, can it produce "PURPLE" instead of
"PURPLE()"?
> ToString transform should be enum aware
> ---------------------------------------
>
> Key: GROOVY-11814
> URL: https://issues.apache.org/jira/browse/GROOVY-11814
> Project: Groovy
> Issue Type: Bug
> Reporter: Paul King
> Priority: Major
>
> Although it may not be common to use @ToString for an enum, it is supported:
> {code:groovy}
> @ToString(includeNames = true)
> enum Foo {
> Bar(prop: 'val1'), Baz(prop: 'val2')
> final String prop
> }
> {code}
> The current behavior has the classname hard-coded and produces:
> {code:groovy}
> println Foo.Bar // Foo(prop:val1)
> println Foo.Baz // Foo(prop:val2)
> {code}
> The suggested behavior is:
> {code:groovy}
> println Foo.Bar // Bar(prop:val1)
> println Foo.Baz // Baz(prop:val2)
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)