class SessionCacheFetcher extends CacheFetcher {

    @Override
    protected Object computeResult() {
        return SessionTokenUtils.getSessionFromRawToken(rawToken);
    }

}

class SessionCacheFetcherTest {

    private static final String GCS;
    private static final String BIGQUERY;
    private static final String ALICE;
    private static final String MOCK_BUCKET;
    private static final Long SESSION_RENEW_PERIOD;
    private static final Long SESSION_MAXIMUM_LIFETIME;
    @ClassRule
    public static SettingsOverride settingsOverride;

    @Test
    public void testComputeResult() {

        Session session = createSession();
        String rawToken = SessionTokenUtils.marshallSessionToken(session);
        SessionCacheFetcher fetcher = new SessionCacheFetcher(rawToken);
        Session computed = (Session) fetcher.computeResult();
        assertEquals(session.getId(), computed.getId());
    }

}