@Override
    public HashMap<String, Object> loadVGroups() {
        try {
            File fileToLoad = new File(storePath);
            if (!fileToLoad.exists()) {
                try {
                    // create new file to record vgroup mapping relationship
                    boolean fileCreated = fileToLoad.createNewFile();
                    if (fileCreated) {
                        LOGGER.info("New vgroup file created at path: " + storePath);
                    } else {
                        LOGGER.warn("Failed to create a new vgroup file at path: " + storePath);
                    }
                } catch (IOException e) {
                    LOGGER.error("Error while creating a new file: " + e.getMessage());
                }
            }

            String fileContent = FileUtils.readFileToString(fileToLoad, "UTF-8");

            if (!fileContent.isEmpty()) {
                ObjectMapper objectMapper = new ObjectMapper();
                vGroupMapping = objectMapper.readValue(fileContent, new TypeReference<HashMap<String, Object>>() {
                });
            }


        } catch (Exception e) {
            LOGGER.error("mapping relationship load failed! " + e);
        }
        return vGroupMapping;
    }
@Test
    public void testLoadVGroups() throws IOException {
        HashMap<String, Object> expectedMapping = new HashMap<>();
        expectedMapping.put(VGROUP_NAME, UNIT);
        File file = new File(STORE_PATH);
        FileUtils.writeStringToFile(file, "{\"testVGroup\":\"testUnit\"}", StandardCharsets.UTF_8);

        HashMap<String, Object> actualMapping = fileVGroupMappingStoreManager.loadVGroups();
        assertEquals(expectedMapping, actualMapping);
    }