@Override
    public Space get() throws BackgroundException {
        // Shared Drives should not have any Quota applied.
        if(new DefaultHomeFinderService(session).find().isChild(DriveHomeFinderService.SHARED_DRIVES_NAME)) {
            return unknown;
        }
        try {
            final About about = session.getClient().about().get().setFields("user, storageQuota").execute();
            final Long used = null == about.getStorageQuota().getUsageInDrive() ? 0L
                : about.getStorageQuota().getUsageInDrive();
            final Long available = (null == about.getStorageQuota().getLimit() ? Long.MAX_VALUE
                : about.getStorageQuota().getLimit()) - used;
            return new Space(used, available);
        }
        catch(IOException e) {
            throw new DriveExceptionMappingService(fileid).map("Failure to read attributes of {0}", e,
                new Path(String.valueOf(Path.DELIMITER), EnumSet.of(Path.Type.volume, Path.Type.directory)));
        }
    }
@Test
    public void testGet() throws Exception {
        final Quota.Space quota = new DriveQuotaFeature(session, new DriveFileIdProvider(session)).get();
        assertNotNull(quota.available);
        assertNotNull(quota.used);
        assertNotEquals(0L, quota.available, 0L);
        assertNotEquals(0L, quota.used, 0L);
    }