@Override
    protected boolean notExist() {
        return Stream.of(ConsulConstants.PLUGIN_DATA, ConsulConstants.AUTH_DATA, ConsulConstants.META_DATA).allMatch(this::dataKeyNotExist);
    }
@Test
    public void testNotExist() throws Exception {
        ConsulDataChangedInit consulDataChangedInit = new ConsulDataChangedInit(consulClient);
        assertNotNull(consulDataChangedInit);

        Response<GetValue> pluginResponse = mock(Response.class);
        when(consulClient.getKVValue(ConsulConstants.PLUGIN_DATA)).thenReturn(pluginResponse);
        when(pluginResponse.getValue()).thenReturn(new GetValue());
        boolean pluginExist = consulDataChangedInit.notExist();
        assertFalse(pluginExist, "plugin exist.");
        when(pluginResponse.getValue()).thenReturn(null);

        Response<GetValue> appAuthResponse = mock(Response.class);
        when(consulClient.getKVValue(ConsulConstants.AUTH_DATA)).thenReturn(appAuthResponse);
        when(appAuthResponse.getValue()).thenReturn(new GetValue());
        boolean appAuthExist = consulDataChangedInit.notExist();
        assertFalse(appAuthExist, "app auth exist.");
        when(appAuthResponse.getValue()).thenReturn(null);

        Response<GetValue> mataDataResponse = mock(Response.class);
        when(consulClient.getKVValue(ConsulConstants.META_DATA)).thenReturn(mataDataResponse);
        when(mataDataResponse.getValue()).thenReturn(new GetValue());
        boolean metaDataExist = consulDataChangedInit.notExist();
        assertFalse(metaDataExist, "metadata exist.");
        when(mataDataResponse.getValue()).thenReturn(null);
        boolean metaDataNotExist = consulDataChangedInit.notExist();
        assertTrue(metaDataNotExist, "metadata not exist.");
    }