Mime.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. using System;
  2. using System.Collections.Generic;
  3. using Microsoft.VisualStudio.TestTools.UnitTesting;
  4. using System.Fire;
  5. namespace Fire.UnitTest {
  6. [TestClass]
  7. public class Mime {
  8. [TestMethod]
  9. public void Mime_MediaType_Mp3_ReturnsTrue() {
  10. Assert.IsTrue(System.Fire.Mime.getMediaType("c:\\test.mp3") == System.Fire.Mime.eMediaType.Audio);
  11. }
  12. [TestMethod]
  13. public void Mime_MediaType_Wav_ReturnsTrue() {
  14. Assert.IsTrue(System.Fire.Mime.getMediaType("c:\\test.WAV") == System.Fire.Mime.eMediaType.Audio);
  15. }
  16. [TestMethod]
  17. public void Mime_MediaType_Avi_ReturnsTrue() {
  18. Assert.IsTrue(System.Fire.Mime.getMediaType("c:\\Meine Videos\\Test.Avi") == System.Fire.Mime.eMediaType.Video);
  19. }
  20. [TestMethod]
  21. public void Mime_MediaType_Mkv_ReturnsTrue() {
  22. Assert.IsTrue(System.Fire.Mime.getMediaType("c:\\te_st\\Mein.Verzeichnis\\test.mkv") == System.Fire.Mime.eMediaType.Video);
  23. }
  24. [TestMethod]
  25. public void Mime_MediaType_Exe_ReturnsTrue() {
  26. Assert.IsTrue(System.Fire.Mime.getMediaType("c:\\te.st.exe") == System.Fire.Mime.eMediaType.Application);
  27. }
  28. [TestMethod]
  29. public void Mime_MediaType_Unknwon_ReturnsTrue() {
  30. Assert.IsTrue(System.Fire.Mime.getMediaType("c:\\te.st.zed") == System.Fire.Mime.eMediaType.Application);
  31. }
  32. [TestMethod]
  33. public void Mime_MediaType_Mp4_ReturnsTrue() {
  34. Assert.IsTrue(System.Fire.Mime.getMediaType("video/mp4") == System.Fire.Mime.eMediaType.Video);
  35. }
  36. [TestMethod]
  37. public void Mime_GetMime_Mp4_ReturnsTrue() {
  38. Assert.IsTrue(System.Fire.Mime.getMimeType("c:\\Eigene Dateien\\V.ideo\\test.mp4") == "video/mp4");
  39. }
  40. [TestMethod]
  41. public void Mime_MediaType_Web_ReturnsTrue() {
  42. IDictionary<string, System.Fire.Mime.eMediaType> tests = new Dictionary<string, System.Fire.Mime.eMediaType>(StringComparer.InvariantCultureIgnoreCase) {
  43. { ".css", System.Fire.Mime.eMediaType.Text },
  44. { ".htm", System.Fire.Mime.eMediaType.Text },
  45. { ".html", System.Fire.Mime.eMediaType.Text },
  46. { ".php", System.Fire.Mime.eMediaType.Text },
  47. { ".php5", System.Fire.Mime.eMediaType.Text },
  48. { ".php7", System.Fire.Mime.eMediaType.Text },
  49. { ".js", System.Fire.Mime.eMediaType.Application },
  50. { ".json", System.Fire.Mime.eMediaType.Application },
  51. { ".jpg", System.Fire.Mime.eMediaType.Image },
  52. { ".jpeg", System.Fire.Mime.eMediaType.Image },
  53. { ".gif", System.Fire.Mime.eMediaType.Image },
  54. { ".png", System.Fire.Mime.eMediaType.Image },
  55. { ".webm", System.Fire.Mime.eMediaType.Video }
  56. };
  57. bool bRes = true;
  58. foreach(KeyValuePair<string, System.Fire.Mime.eMediaType> r in tests) {
  59. if(System.Fire.Mime.getMediaType("http://www.test.com/test" + r.Key) != r.Value) {
  60. System.Diagnostics.Debug.WriteLine("Web Test failed: " + "http://www.test.com/test" + r.Key + " (" + r.Key + ")");
  61. bRes = false;
  62. }
  63. }
  64. Assert.IsTrue(bRes);
  65. }
  66. }
  67. }