jenkinsci / groovy-sandbox

(Deprecated) Compile-time transformer to run Groovy code in a restrictive sandbox
MIT License
123 stars 60 forks source link

Migrate all Groovy test sources to Java #96

Closed dwnusbaum closed 1 year ago

dwnusbaum commented 1 year ago

The tests written in Groovy in this repository have often frustrated me. They cannot be run individually from my IDE when I need to debug a specific test, and I often run into subtle issues with incremental compilation and stub generation. I have not found Groovy's assert statement to be particularly helpful when debugging tests, and so in my opinion the main benefit of the Groovy sources was the readability improvement from using multi-line strings for Groovy scripts, which I am more than willing to give up to make the codebase more consistent and allow us to remove the dependency on gmavenplus.

Because so many lines needed semicolon insertions and other trivial modifications, Git's rename detection does not work and so the diff is not exactly reviewable. I verified that we are executing the same number of tests before and after the change to make sure that nothing got dropped by accident.

jglick commented 1 year ago

Git's rename detection does not work

Yeah Git tries to be clever but sometimes is not clever enough, or too clever. Mercurial lets you explicitly declare a file rename, which I have found more reliable and useful.