'Ensure that subclassed documents don\'t override parents\'
collections'

def test_inherited_collections(self):

    class Drink(Document, ):
        name = StringField()
        meta = {'allow_inheritance': True}
    class Drinker(Document, ):
        drink = GenericReferenceField()
    try:
        warnings.simplefilter('error')
        class AcloholicDrink(Drink, ):
            meta = {'collection': 'booze'}
    except SyntaxWarning:
        warnings.simplefilter('ignore')
        class AlcoholicDrink(Drink, ):
            meta = {'collection': 'booze'}
    else:
        raise AssertionError('SyntaxWarning    should    be    triggered')
    warnings.resetwarnings()
    Drink.drop_collection()
    AlcoholicDrink.drop_collection()
    Drinker.drop_collection()
    red_bull = Drink(name='Red    Bull')
    red_bull.save()
    programmer = Drinker(drink=red_bull)
    programmer.save()
    beer = AlcoholicDrink(name='Beer')
    beer.save()
    real_person = Drinker(drink=beer)
    real_person.save()
    self.assertEqual(Drinker.objects[0].drink.name, red_bull.name)
    self.assertEqual(Drinker.objects[1].drink.name, beer.name)
