[ 
https://issues.apache.org/jira/browse/GEODE-8285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17144393#comment-17144393
 ] 

ASF subversion and git services commented on GEODE-8285:
--------------------------------------------------------

Commit ab83b6139dab2369a9db7261a9eadee60f4840cc in geode's branch 
refs/heads/develop from luissson
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=ab83b61 ]

GEODE-8285: Change location of generated test file to build dir and fix error 
message path for sanctioned text file (#5280)

refactor createEmptyFile and getSrcPathFor for clarity

> Serializables Sanctioning Prescribes Wrong Destination Path
> -----------------------------------------------------------
>
>                 Key: GEODE-8285
>                 URL: https://issues.apache.org/jira/browse/GEODE-8285
>             Project: Geode
>          Issue Type: Bug
>          Components: tools
>            Reporter: Bill Burcham
>            Assignee: Louis R. Jacome
>            Priority: Major
>              Labels: starter
>
> Serializable analysis classes derived from 
> {{AnalyzeSerializablesJUnitTestBase}}, intend to inform the developer to copy 
> a generated {{excludedClasses.txt}} file over a 
> {{sanctionedDataSerializables.txt}} in a _resources_ directory. The paths can 
> get long and complicated so it's nice that the analyzers provide the paths, 
> ostensibly so that a developer can simply copy them into a {{cp}} line at the 
> terminal.
> There is a problem with one of the paths, at least as generated by 
> {{AnalyzeCoreSerializablesJUnitTest}}, but also, I suspect in all the classes 
> derived from {{AnalyzeSerializablesJUnitTestBase}}. Here is an example of the 
> output generated by the former…
> I ran:
> {noformat}
> ±  |feature/GEODE-8240-version-ordinal-type → Bill {3} ✓| → ./gradlew 
> :geode-core:integrationTest --tests=AnalyzeCoreSerializablesJUnitTest
> {noformat}
> and it output:
> {noformat}
> If the class is not persisted or sent over the wire add it to the file 
> /Users/bburcham/Projects/geode/geode-core/build/resources/integrationTest/org/apache/geode/codeAnalysis/excludedClasses.txt
> Otherwise if this doesn't break backward compatibility, copy the file 
> /Users/bburcham/Projects/geode/geode-core/build/integrationTest/actualDataSerializables.dat
>  to 
> /Users/bburcham/Projects/geode/geode-core/build/resources/integrationTest/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt.
> {noformat}
> so ostensibly I should:
> {noformat}
> cp 
> /Users/bburcham/Projects/geode/geode-core/build/integrationTest/actualDataSerializables.dat
>  
> /Users/bburcham/Projects/geode/geode-core/build/resources/integrationTest/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
> {noformat}
> But in fact the destination is wrong! Notice that it is a {{.../build/...}} 
> directory?!?
> What I really needed was:
> {noformat}
> cp 
> /Users/bburcham/Projects/geode/geode-core/build/integrationTest/actualDataSerializables.dat
>  
> /Users/bburcham/Projects/geode/geode-core/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
> {noformat}
> The prefix on the second path was:
> {noformat}
> /Users/bburcham/Projects/geode/geode-core/build/resources
> {noformat}
> but needed to be:
> {noformat}
> /Users/bburcham/Projects/geode/geode-core/src/integrationTest/resources
> {noformat}
> h2. Reproduction
> To reproduce this, modify some {{toData}} on some serializable class in the 
> {{geode-core}} module e.g. {{RegionVersionVector}}, by adding some innocuous 
> code like:
> {code}
>     System.out.println("hi!");
> {code}
> And then run:
> {noformat}
> $ ./gradlew :geode-core:integrationTest 
> --tests=AnalyzeCoreSerializablesJUnitTest
> {noformat}
> You'll see the an advice block like the one I provided above and you'll see 
> the incorrect destination directory.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to