    @Test
    public void updateRequiredAndLowerVersion() throws IOException, PackageManager.NameNotFoundException, InterruptedException {


        enqueueMockResponse("updateRequired.json");

        final CountDownLatch countDownLatch = new CountDownLatch(1);

        GandalfCallback mockCallback = getGandalfCallback(countDownLatch);
        getGandalfInstance(VERSION_NAME, 6).shallIPass(mockContext, mockCallback);

        boolean status = countDownLatch.await(5, TimeUnit.SECONDS);
        assertTrue(LATCH_TIMEOUT_MESSAGE, status);

        verify(mockCallback).onRequiredUpdate(any(RequiredUpdate.class));
    }