@Test
public 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}));
}