public static void assertAreEqual(FileProperties prop1, FileProperties prop2) { if (prop1 == null) { Assert.assertNull(prop2); } else { Assert.assertNotNull(prop2); Assert.assertEquals(prop1.getCacheControl(), prop2.getCacheControl()); Assert.assertEquals(prop1.getContentDisposition(), prop2.getContentDisposition()); Assert.assertEquals(prop1.getContentEncoding(), prop2.getContentEncoding()); Assert.assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); Assert.assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); Assert.assertEquals(prop1.getContentType(), prop2.getContentType()); Assert.assertEquals(prop1.getEtag(), prop2.getEtag()); Assert.assertEquals(prop1.getLastModified(), prop2.getLastModified()); Assert.assertEquals(prop1.getLength(), prop2.getLength()); } }
/** * Adds the properties. * * @param request * The request * @param properties * The file properties */ private static void addProperties(final HttpURLConnection request, FileProperties properties) { BaseRequest.addOptionalHeader(request, FileConstants.CACHE_CONTROL_HEADER, properties.getCacheControl()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_DISPOSITION_HEADER, properties.getContentDisposition()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_ENCODING_HEADER, properties.getContentEncoding()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_LANGUAGE_HEADER, properties.getContentLanguage()); BaseRequest.addOptionalHeader(request, FileConstants.FILE_CONTENT_MD5_HEADER, properties.getContentMD5()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_TYPE_HEADER, properties.getContentType()); }
/** * Adds the properties. * * @param request * The request * @param properties * The file properties */ private static void addProperties(final HttpURLConnection request, FileProperties properties) { BaseRequest.addOptionalHeader(request, FileConstants.CACHE_CONTROL_HEADER, properties.getCacheControl()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_DISPOSITION_HEADER, properties.getContentDisposition()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_ENCODING_HEADER, properties.getContentEncoding()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_LANGUAGE_HEADER, properties.getContentLanguage()); BaseRequest.addOptionalHeader(request, FileConstants.FILE_CONTENT_MD5_HEADER, properties.getContentMD5()); BaseRequest.addOptionalHeader(request, FileConstants.CONTENT_TYPE_HEADER, properties.getContentType()); }
this.retrievedContentMD5Value = parentFile.getProperties().getContentMD5();
this.retrievedContentMD5Value = parentFile.getProperties().getContentMD5();
assertNull(fileRef2.getProperties().getContentMD5()); assertEquals(calculatedMD5, fileRef2.getProperties().getContentMD5());
assertEquals(prop1.getContentDisposition(), prop2.getContentDisposition()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType());
assertEquals(prop1.getContentEncoding(), prop2.getContentEncoding()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType());
@Test @Category({ DevFabricTests.class, DevStoreTests.class }) public void testVerifyTransactionalMD5ValidationMissingOverallMD5() throws URISyntaxException, StorageException, IOException { final String fileName = FileTestHelper.generateRandomFileName(); final CloudFile fileRef = this.share.getRootDirectoryReference().getFileReference(fileName); final int length = 3*1024; ByteArrayInputStream srcStream = BlobTestHelper.getRandomDataStream(length); FileRequestOptions options = new FileRequestOptions(); options.setDisableContentMD5Validation(true); options.setStoreFileContentMD5(false); fileRef.upload(srcStream, length, null, options, null); options.setDisableContentMD5Validation(false); options.setStoreFileContentMD5(true); options.setUseTransactionalContentMD5(true); final CloudFile fileRef2 = this.share.getRootDirectoryReference().getFileReference(fileName); fileRef2.downloadRange(1024, (long)1024, new ByteArrayOutputStream(), null, options, null); assertNull(fileRef2.getProperties().getContentMD5()); }
assertEquals(prop1.getContentEncoding(), prop2.getContentEncoding()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType());
prop2.getContentDisposition()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType());
/** * @throws StorageException * @throws URISyntaxException * @throws IOException * @throws InterruptedException */ @Test @Category({ DevFabricTests.class, DevStoreTests.class, SlowTests.class }) public void testFileNamePlusEncoding() throws StorageException, URISyntaxException, IOException, InterruptedException { CloudFile originalFile = FileTestHelper.uploadNewFile(this.share, 1024 /* length */, null); CloudFile copyFile = this.share.getRootDirectoryReference().getFileReference(originalFile.getName() + "copyed"); copyFile.startCopy(originalFile); FileTestHelper.waitForCopy(copyFile); copyFile.downloadAttributes(); originalFile.downloadAttributes(); FileProperties prop1 = copyFile.getProperties(); FileProperties prop2 = originalFile.getProperties(); assertEquals(prop1.getCacheControl(), prop2.getCacheControl()); assertEquals(prop1.getContentEncoding(), prop2.getContentEncoding()); assertEquals(prop1.getContentDisposition(), prop2.getContentDisposition()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType()); }
assertEquals(prop1.getContentEncoding(), prop2.getContentEncoding()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType());
prop2.getContentDisposition()); assertEquals(prop1.getContentLanguage(), prop2.getContentLanguage()); assertEquals(prop1.getContentMD5(), prop2.getContentMD5()); assertEquals(prop1.getContentType(), prop2.getContentType());
assertNull(file.getProperties().getContentLanguage()); assertNull(file.getProperties().getContentType()); assertNull(file.getProperties().getContentMD5()); assertNull(file2.getProperties().getContentLanguage()); assertEquals("application/octet-stream", file2.getProperties().getContentType()); assertNull(file2.getProperties().getContentMD5());
assertEquals("gzip", file2.getProperties().getContentEncoding()); assertEquals("tr,en", file2.getProperties().getContentLanguage()); assertEquals("MDAwMDAwMDA=", file2.getProperties().getContentMD5()); assertEquals("text/html", file2.getProperties().getContentType());