private void doIsFullTest(final Long limit,
                              final Long used,
                              final boolean expectedIsFull) {
        final FsVolume fsVolume = new FsVolume();
        fsVolume.setByteLimit(limit);
        final long total = 1000;
        final long free = total - used;
        final FsVolumeState fsVolumeState = new FsVolumeState(
                1,
                1,
                used,
                free,
                total,
                System.currentTimeMillis());
        fsVolume.setVolumeState(fsVolumeState);

        Assertions.assertThat(fsVolume.getCapacityInfo().isFull())
                .isEqualTo(expectedIsFull);
        Assertions.assertThat(fsVolume.getCapacityInfo().getTotalCapacityBytes())
                .hasValue(total);
        Assertions.assertThat(fsVolume.getCapacityInfo().getCapacityUsedBytes())
                .hasValue(used);
        Assertions.assertThat(fsVolume.getCapacityInfo().getFreeCapacityBytes())
                .hasValue(free);
    }
Use this method to diagnose why your JSON-to-POJO bindings are failing.
stroom-core-shared/src/test/java/stroom/index/shared/TestIndexVolume.java