public void ItDetectsPDFs() { var fileTypes = checker.GetFileTypes(pdf); CollectionAssert.AreEquivalent( new[] { "Portable Document Format" }, fileTypes.Select(fileType => fileType.Name)); }
public void ItDetectsPDFs() { var pdf = LoadFile("Resources/pdf.pdf"); var fileTypes = checker.GetFileTypes(pdf); CollectionAssert.AreEquivalent( new[] { "Portable Document Format" }, fileTypes.Select(fileType => fileType.Name).ToArray()); }
public void ItDoesntDetectBMPs() { checker = new FileTypeChecker(new List <FileType> { new FileType("Portable Network Graphic", ".png", new ExactFileTypeMatcher(new byte[] { 0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A })), new FileType("JPEG", ".jpg", new FuzzyFileTypeMatcher(new byte?[] { 0xFF, 0xD, 0xFF, 0xE0, null, null, 0x4A, 0x46, 0x49, 0x46, 0x00 })), new FileType("Graphics Interchange Format 87a", ".gif", new ExactFileTypeMatcher(new byte[] { 0x47, 0x49, 0x46, 0x38, 0x37, 0x61 })), new FileType("Graphics Interchange Format 89a", ".gif", new ExactFileTypeMatcher(new byte[] { 0x47, 0x49, 0x46, 0x38, 0x39, 0x61 })), new FileType("Portable Document Format", ".pdf", new RangeFileTypeMatcher(new ExactFileTypeMatcher(new byte[] { 0x25, 0x50, 0x44, 0x46 }), 1019)) // ... Potentially more in future }); var fileTypes = checker.GetFileTypes(bitmap); Assert.AreEqual(0, fileTypes.Count()); }
public void ItDoesntDetectPDFs() { var pdf = LoadFile("Resources/pdf.pdf"); checker = new FileTypeChecker(new List <FileType> { new FileType("Bitmap", ".bmp", new ExactFileTypeMatcher(new byte[] { 0x42, 0x4d })), new FileType("Portable Network Graphic", ".png", new ExactFileTypeMatcher(new byte[] { 0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A })), new FileType("JPEG", ".jpg", new FuzzyFileTypeMatcher(new byte?[] { 0xFF, 0xD, 0xFF, 0xE0, null, null, 0x4A, 0x46, 0x49, 0x46, 0x00 })), new FileType("Graphics Interchange Format 87a", ".gif", new ExactFileTypeMatcher(new byte[] { 0x47, 0x49, 0x46, 0x38, 0x37, 0x61 })), new FileType("Graphics Interchange Format 89a", ".gif", new ExactFileTypeMatcher(new byte[] { 0x47, 0x49, 0x46, 0x38, 0x39, 0x61 })) // ... Potentially more in future }); var fileTypes = checker.GetFileTypes(pdf); Assert.AreEqual(0, fileTypes.Count()); }