Test with and without inverseName on many-to-many relations. 100% coverage More thoughts: * Mongo appears to store everyting as UTC. What if I want to keep the time zone component of my dates? * How should it work when there can be more than two owners for an object? The kinds of tests that have been written for sally should be applied directly to this layer. Get rid of all x-owner and x-indirect-owner in the mongoose data - that information should be fetched from meta instead! All operations that can leave the data in an invalid state should use two-phase commits and be tested for that. There are at least a couple of features that have not been tested: * Validation in "nullablesValidation" * Cascade in "preRemoveCascadeNullable" (should work by removing as hasOne indrectly, by deleteing an owner for example) * Uniques * Require * Indexes (How to test them? Do I need huge data?) Should ID's be considered global between all models or local for their particular models? - If global, then the api could be slightly different (why required the name of the target for a put for example) - If local, then there are tests breaking this. Test what happens if two fields are invalid according to custom validators; what should the error output be?