labath added a comment. In https://reviews.llvm.org/D31129#705597, @zturner wrote:
> See what you think about this. I've created a folder called `Mocks` under > `Utility`, and created a new target out of it. `UtilityTests` links against > it, and so does `InterpreterTests`. To do this I had to add the lldb project > root as an include directory, this way you can write `#include > "unittests/Utility/Mocks/MockTildeExpressionResolver.h"`. Another > possibility would be to create `lldb/unittests/Mocks/Mocks/Utility`, and then > add `lldb/unittests/Mocks` as an include folder. This way you could write > `#include "Mocks/Utility/MockTildeExpressionResolver.h"`. I don't have a > strong preference either way. > > I explicitly chose NOT to make one single target for all mocks (although > there is only one right now obviously), because then you would have > `UtilityTests` bringing in mocks from projects it doesn't depend on, and thus > it would link against those projects as well, breaking the library layering. It's not exactly the pinnacle of elegance, but I think this is better (and I don't know how I would improve it). The only thing I am not sure about is the `Mocks` folder name. I am thinking that we may run into the situation where we have some other test-only code we want to share, but it is not strictly a "mock". The only function that comes to mind right now is the `CreateConnectedSockets` from SocketTest.cpp -- I could have to reused this in gdb-remote tests, although I eventually opted for reimplementing it, as I could make it a lot simpler for this special case. (Although in this case it may have made sense to add a function like that to the regular codebase). I don't really have a good suggestion for a name though, so maybe we can leave this until a real case for it comes up. https://reviews.llvm.org/D31129 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits