public Map<String, List<Info>> getApprovals() {
        return approvals;
    }
@Test
    public void shouldDeserialize() throws JsonProcessingException, IOException {
        final ObjectMapper mapper = JsonUtils.createObjectMapper();

        final Object read = mapper.readerFor(Approvals.class).readValue("{\n" + //
                                                                        "  \"approvals\" : {\n" + //
                                                                        "   \"Account\" : [ {\n" + //
                                                                        "     \"description\" : null,\n" + //
                                                                        "     \"id\" : \"04aD00000008Py9\",\n" + //
                                                                        "     \"name\" : \"Account Approval Process\",\n" + //
                                                                        "     \"object\" : \"Account\",\n" + //
                                                                        "     \"sortOrder\" : 1\n" + //
                                                                        "   } ]\n" + //
                                                                        "  }\n" + //
                                                                        "}");

        assertThat("Should deserialize Approvals", read, instanceOf(Approvals.class));

        final Approvals approvals = (Approvals) read;

        final Map<String, List<Info>> approvalsMap = approvals.getApprovals();
        assertEquals(1, approvalsMap.size(), "Deserialized approvals should have one entry");

        final List<Info> accountApprovals = approvalsMap.get("Account");
        assertNotNull(accountApprovals, "Deserialized approvals should contain list of `Account` type approvals");

        assertEquals(1, accountApprovals.size(), "There should be one approval of `Account` type");

        final Info accountInfo = accountApprovals.get(0);

        assertNull(accountInfo.getDescription(), "Deserialized `Account` approval should have null description");
        assertEquals("04aD00000008Py9", accountInfo.getId(), "Deserialized `Account` approval should have defined id");
        assertEquals("Account Approval Process", accountInfo.getName(),
                "Deserialized `Account` approval should have defined name");
        assertEquals("Account", accountInfo.getObject(), "Deserialized `Account` approval should have defined object");
        assertEquals(1, accountInfo.getSortOrder(), "Deserialized `Account` approval should have defined sortOrder");
    }