### Question:
ModelCatalog { public static Model<?, ?> drop(String username, String modelName) { return getUserCatalog(username).drop(modelName); } private  ModelCatalog(); static void set(Model<?, ?> model); static Model<D, C> get(
        String username, String modelName, Class<D> dataClass, Class<C> configClass
    ); static boolean exists(String username, String modelName); static Optional<String> type(String username, String modelName); static Model<?, ?> drop(String username, String modelName); static Collection<Model<?, ?>> list(String username); static Model<?, ?> list(String username, String modelName); static void removeAllLoadedModels();  }### Answer:
@Test void failsWhenTryingToDropNonExistingModel() { IllegalArgumentException ex = assertThrows( IllegalArgumentException.class, () -> ModelCatalog.drop(USERNAME, "something") ); assertEquals("Model with name `something` does not exist and can't be removed.", ex.getMessage()); }