quelea-projection / Quelea

Open source projection software for churches.
https://quelea.org
GNU General Public License v3.0
158 stars 145 forks source link

Testing #618

Closed tieskedh closed 9 months ago

tieskedh commented 1 year ago

I wanted to challenge myself to refactor the codebase to Kotlin. This is not useful for the project, so this is something I want to do for myself.

However, I want to do this by first writing property-based testing using Kotest.

I decided first to test the current behavior, e.g.:

In order to be able to do this, for my refactored code, I needed to introduce dependency-injection.

My question is: if I start out (again) gradually, do you see value in this? If so, is there a good place to ask questions, like the ones above? And of course, are you willing to gradually adopt dependency-injection?

berry120 commented 9 months ago

The short answer is probably not, I'm afraid.

I do see value in dependency injection, but the amount of refactoring required in the current codebase in order to implement this separately would be immense - and while I appreciate you'd be the one doing the work, I'd be reviewing it and it'd thus be too big a time sink for me to justify. It'd also almost certainly need a lot of refactoring - and again with mass refactoring comes the need for very careful reviewing and the inevitability that some bugs will likely slip in somewhere.

berry120 commented 9 months ago

Closing this one off but happy to continue to discuss / debate if you want to reopen - just trying to tidy up issues a bit 👍