public ModuleServiceRepository getServiceRepository() {
        return serviceRepository;
    }
@Test
    void testDestroy() {
        FrameworkModel frameworkModel = new FrameworkModel();
        ApplicationModel applicationModel = frameworkModel.newApplication();
        ModuleModel moduleModel = applicationModel.newModule();

        MockScopeModelDestroyListener destroyListener = new MockScopeModelDestroyListener();
        moduleModel.addDestroyListener(destroyListener);

        moduleModel.destroy();
        Assertions.assertTrue(destroyListener.isDestroyed());
        Assertions.assertEquals(destroyListener.getScopeModel(), moduleModel);
        Assertions.assertFalse(applicationModel.getPubModuleModels().contains(moduleModel));
        Assertions.assertNull(moduleModel.getServiceRepository());
        Assertions.assertTrue(moduleModel.isDestroyed());

        // trigger tryDestroy
        Assertions.assertTrue(applicationModel.isDestroyed());
        Assertions.assertTrue(frameworkModel.isDestroyed());
    }