public <T extends BaseRequest<T, R>, R extends BaseResponse> R execute(BaseRequest<T, R> request) {
        return api.send(request);
    }
@Test
    public void chatJoinRequest() {
        BaseResponse response = bot.execute(new ApproveChatJoinRequest(groupId, memberBot));
        assertFalse(response.isOk());
        assertEquals("Bad Request: USER_ALREADY_PARTICIPANT", response.description());

        response = bot.execute(new DeclineChatJoinRequest(groupId, memberBot));
        assertFalse(response.isOk());
        assertEquals("Bad Request: HIDE_REQUESTER_MISSING", response.description());
    }