@Override
    public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException {
        return new InjvmExporter<>(invoker, invoker.getUrl().getServiceKey(), exporterMap);
    }
@Test
    void testApplication() {
        DemoService service = new DemoServiceImpl();
        URL url = URL.valueOf("injvm://127.0.0.1/TestService")
                .addParameter(INTERFACE_KEY, DemoService.class.getName())
                .addParameter("application", "consumer")
                .addParameter(APPLICATION_KEY, "test-app")
                .setScopeModel(ApplicationModel.defaultModel().getDefaultModule());
        Invoker<?> invoker = proxy.getInvoker(service, DemoService.class, url);
        assertTrue(invoker.isAvailable());
        Exporter<?> exporter = protocol.export(invoker);
        exporters.add(exporter);
        service = proxy.getProxy(protocol.refer(DemoService.class, url));
        assertEquals("test-app", service.getApplication());
        assertTrue(StringUtils.isEmpty(RpcContext.getServiceContext().getRemoteApplicationName()));
    }