private Mono<ServerResponse> fetchActivatedTheme(ServerRequest request) {
        return systemEnvironmentFetcher.fetch(SystemSetting.Theme.GROUP, SystemSetting.Theme.class)
            .map(SystemSetting.Theme::getActive)
            .flatMap(activatedName -> client.fetch(Theme.class, activatedName))
            .flatMap(theme -> ServerResponse.ok().bodyValue(theme));
    }
@Test
    void fetchActivatedTheme() {
        when(environmentFetcher.fetch(eq(SystemSetting.Theme.GROUP), eq(SystemSetting.Theme.class)))
            .thenReturn(Mono.fromSupplier(() -> {
                SystemSetting.Theme theme = new SystemSetting.Theme();
                theme.setActive("fake-activated");
                return theme;
            }));

        when(client.fetch(eq(Theme.class), eq("fake-activated"))).thenReturn(Mono.empty());
        webTestClient.get()
            .uri("/themes/-/activation")
            .exchange()
            .expectStatus().isOk();

        verify(client).fetch(eq(Theme.class), eq("fake-activated"));
    }