Currently I’ve decided to start unit testing my application and seeing that CLion has support for both Catch and GTest (Google Test), I would like to use one of those. The problem is that both actually want to create the main method themselves, as does JUCE (the START_JUCE_APPLICATION()), which is of course not possible. I’ve tried some macro-magic, where I either let JUCE or GTest create the main method, but this resulted in recompiling my entire application every time I switched, which was to say, less than ideal. Ideally, I would like to have two different configurations, one where I would simply run the program and the second one in which only the tests are ran. Is this possible? And can anyone tell me how I could use one of these frameworks in combination with JUCE?
In addition, are there strong (dis)advantages with either of them? So far, it seems as if Catch is somewhat simpler (only a single header file for example), while GTest is integrated with GMock (I don’t need mocking right now, but I might in the future).
Thanks in advance for your help!