@Override
    public Checksum compute(final InputStream in, final TransferStatus status) throws BackgroundException {
        return new Checksum(HashAlgorithm.sha1, this.digest("SHA-1",
                this.normalize(in, status), status));
    }
@Test
    public void testNormalize() throws Exception {
        assertEquals("140f86aae51ab9e1cda9b4254fe98a74eb54c1a1",
            new SHA1ChecksumCompute().compute(IOUtils.toInputStream("input", Charset.defaultCharset()),
                new TransferStatus()).hash);
        assertEquals("140f86aae51ab9e1cda9b4254fe98a74eb54c1a1",
            new SHA1ChecksumCompute().compute(IOUtils.toInputStream("_input", Charset.defaultCharset()),
                new TransferStatus().withOffset(1)).hash);
        assertEquals("140f86aae51ab9e1cda9b4254fe98a74eb54c1a1",
            new SHA1ChecksumCompute().compute(IOUtils.toInputStream("_input_", Charset.defaultCharset()),
                new TransferStatus().withOffset(1).withLength(5)).hash);
    }