It doesn't have an explicit test, no, and it does need one. Pretty much all of the new tests which use Model classes as input are tests of it, however, and the entire functionality change depends on it.

Off the top of my head, the only way the error can occur is by using 1.6, and manually specifying subclass strings in the "wrong" order - I think `'a', 'a__b', 'a__b__c'` would be a candidate for error, because the order of `subclasses` is important for `_get_sub_obj_recurse`. So a C object would usually not get returned, because the forloop would `break` at the A.