### Question:
IdMappingBlob extends BlobWrapper { @Override public URI getCanonicalId() throws IOException { URI internalId = delegate.getCanonicalId(); if (internalId == null) return null; return mapper.getExternalId(internalId); } IdMappingBlob(BlobStoreConnection connection, Blob delegate, IdMapper mapper); @Override URI getCanonicalId(); @Override URI getId(); @Override Blob moveTo(URI blobId, Map<String, String> hints);  }### Answer:
@Test public void testGetCanonicalIdNotNull() throws Exception { assertNotNull(getTestBlob(blobId1, true).getCanonicalId()); }
@Test public void testGetCanonicalIdNull() throws Exception { assertNull(getTestBlob(blobId1, false).getCanonicalId()); }