Exemplo n.º 1
0
 protected override void VisitTnefPart(TnefPart entity)
 {
     // extract any attachments in the MS-TNEF part
     _attachments.AddRange(entity.ExtractAttachments());
 }
Exemplo n.º 2
0
		static void TestTnefParser (string path, TnefComplianceStatus expected = TnefComplianceStatus.Compliant)
		{
			var message = ParseTnefMessage (path + ".tnef", expected);
			var names = File.ReadAllLines (path + ".list");

			foreach (var name in names) {
				bool found = false;

				foreach (var part in message.BodyParts.OfType<MimePart> ()) {
					if (part.FileName == name) {
						found = true;
						break;
					}
				}

				if (!found)
					Assert.Fail ("Failed to locate attachment: {0}", name);
			}

			// now use TnefPart to do the same thing
			using (var content = File.OpenRead (path + ".tnef")) {
				var tnef = new TnefPart { ContentObject = new ContentObject (content) };
				var attachments = tnef.ExtractAttachments ().ToList ();

				foreach (var name in names) {
					bool found = false;

					foreach (var part in attachments.OfType<MimePart> ()) {
						if (part.FileName == name) {
							found = true;
							break;
						}
					}

					if (!found)
						Assert.Fail ("Failed to locate attachment in TnefPart: {0}", name);
				}
			}
		}