Yesterday, we reached an epic milestone:
With commit 17df267d7f8f5eb4a8073f600ca4295a1f5839f2 @hjmjohnson hit the 50,000’th commit in the ITK source code repository
To celebrate 50,000 thoughts, 50,000 number crunches, and 50,000 sets of passing tests (ok, almost 50,000 sets of passing tests ), let’s hold an online hackathon.
What: A hackathon to celebrate 50,000 commits to the ITK source code repository.
Who: Members of the global ITK community, from past, present, to future.
Where: Join the event with this video conferencing link:
When: Wednesday, April 10th, 2019, 10 AM to 4 PM, Eastern Standard Time
See you at the hackathon!
@Niels_Dekker brilliant idea – more GoogleTests are achievable for newcomers during the hackathon, and it is a good opportunity to improve our code coverage.
Perhaps we can reference a few excellent GoogleTest examples to serve as a guide in the Google Doc? List classes in need of improved coverage with GoogleTest?
Thanks for your encouragement, @matt.mccormick
Rather than writing some “random” tests for “forgotten classes”, it could be (more) interesting to focus on tests for new ITK5 features, and for recent (ITK5) code changes. But of course, it could still be useful to add more tests for frequently used classes that are still from <= ITK4.
I do especially like small test functions that each check one specific requirement of a class (instead of having a single test function checking many different aspects of a class). This is especially well supported by GTest, in my opinion.
By the way, I noticed that several subprojects of ITK5 don’t yet have a GoogleTestDriver. Is the intention to have a GoogleTestDriver for each of them, eventually? I’m not sure. I just figured out how to add one when I wanted to add a GTest for
ImageMaskSpatialObject, it’s not that hard https://github.com/InsightSoftwareConsortium/ITK/pull/681/commits/41b47d129bf34196cb7fc36e649013fd06ab8cbf
If you start creating issues now, you can steer the focus towards that! And the more issues you propose, the less issues the rest of us will have to propose
Issues to be added to either GitHub or Google Doc.