public static Object parseMockValue(String mock) throws Exception {
        return parseMockValue(mock, null);
    }
@Test
    void testParseMockValue() throws Exception {
        Assertions.assertNull(MockInvoker.parseMockValue("null"));
        Assertions.assertNull(MockInvoker.parseMockValue("empty"));

        Assertions.assertTrue((Boolean) MockInvoker.parseMockValue("true"));
        Assertions.assertFalse((Boolean) MockInvoker.parseMockValue("false"));

        Assertions.assertEquals(123, MockInvoker.parseMockValue("123"));
        Assertions.assertEquals("foo", MockInvoker.parseMockValue("foo"));
        Assertions.assertEquals("foo", MockInvoker.parseMockValue("\"foo\""));
        Assertions.assertEquals("foo", MockInvoker.parseMockValue("\'foo\'"));

        Assertions.assertEquals(new HashMap<>(), MockInvoker.parseMockValue("{}"));
        Assertions.assertEquals(new ArrayList<>(), MockInvoker.parseMockValue("[]"));
        Assertions.assertEquals("foo", MockInvoker.parseMockValue("foo", new Type[] {String.class}));
    }