xamarin-macios/tests/monotouch-test/CoreMedia/EnumTest.cs

152 строки
7.7 KiB
C#

//
// Unit tests for 4cc-based enums
//
// Authors:
// Sebastien Pouliot <sebastien@xamarin.com>
//
// Copyright 2014 Xamarin Inc. All rights reserved.
//
#if !__WATCHOS__
using System;
#if XAMCORE_2_0
using Foundation;
using CoreMedia;
#else
using MonoTouch.CoreMedia;
using MonoTouch.Foundation;
using MonoTouch.UIKit;
#endif
using NUnit.Framework;
namespace MonoTouchFixtures.CoreMedia {
[TestFixture]
[Preserve (AllMembers = true)]
public class EnumTest {
string FourCC (int value)
{
return new string (new char [] {
(char) (byte) (value >> 24),
(char) (byte) (value >> 16),
(char) (byte) (value >> 8),
(char) (byte) value });
}
[Test]
public void MediaType ()
{
Assert.That (FourCC ((int) CMMediaType.Audio), Is.EqualTo ("soun"), "Audio");
Assert.That (FourCC ((int) CMMediaType.ClosedCaption), Is.EqualTo ("clcp"), "ClosedCaption");
Assert.That (FourCC ((int) CMMediaType.Metadata), Is.EqualTo ("meta"), "Metadata");
Assert.That (FourCC ((int) CMMediaType.Muxed), Is.EqualTo ("muxx"), "Muxed");
Assert.That (FourCC ((int) CMMediaType.Subtitle), Is.EqualTo ("sbtl"), "Subtitle");
Assert.That (FourCC ((int) CMMediaType.Text), Is.EqualTo ("text"), "Text");
Assert.That (FourCC ((int) CMMediaType.TimeCode), Is.EqualTo ("tmcd"), "TimeCode");
#if !XAMCORE_2_0
Assert.That (FourCC ((int) CMMediaType.TimedMetadata), Is.EqualTo ("tmet"), "TimedMetadata");
#endif
Assert.That (FourCC ((int) CMMediaType.Video), Is.EqualTo ("vide"), "Video");
}
[Test]
public void ClosedCaptionFormatType ()
{
Assert.That (FourCC ((int) CMClosedCaptionFormatType.ATSC), Is.EqualTo ("atcc"), "ATSC");
Assert.That (FourCC ((int) CMClosedCaptionFormatType.CEA608), Is.EqualTo ("c608"), "CEA608");
Assert.That (FourCC ((int) CMClosedCaptionFormatType.CEA708), Is.EqualTo ("c708"), "CEA708");
}
[Test]
public void MuxedStreamType ()
{
Assert.That (FourCC ((int) CMMuxedStreamType.DV), Is.EqualTo ("dv "), "DV");
Assert.That (FourCC ((int) CMMuxedStreamType.MPEG1System), Is.EqualTo ("mp1s"), "MPEG1System");
Assert.That (FourCC ((int) CMMuxedStreamType.MPEG2Program), Is.EqualTo ("mp2p"), "MPEG2Program");
Assert.That (FourCC ((int) CMMuxedStreamType.MPEG2Transport), Is.EqualTo ("mp2t"), "MPEG2Transport");
}
[Test]
public void SubtitleFormatType ()
{
Assert.That (FourCC ((int) CMSubtitleFormatType.Text3G), Is.EqualTo ("tx3g"), "Text3G");
Assert.That (FourCC ((int) CMSubtitleFormatType.WebVTT), Is.EqualTo ("wvtt"), "WebVTT");
}
[Test]
public void MetadataFormatType ()
{
Assert.That (FourCC ((int) CMMetadataFormatType.Boxed), Is.EqualTo ("mebx"), "Boxed");
Assert.That (FourCC ((int) CMMetadataFormatType.ICY), Is.EqualTo ("icy "), "ICY");
Assert.That (FourCC ((int) CMMetadataFormatType.ID3), Is.EqualTo ("id3 "), "ID3");
}
[Test]
public void TimeCodeFormatType ()
{
Assert.That (FourCC ((int) CMTimeCodeFormatType.Counter32), Is.EqualTo ("cn32"), "Counter32");
Assert.That (FourCC ((int) CMTimeCodeFormatType.Counter64), Is.EqualTo ("cn64"), "Counter64");
Assert.That (FourCC ((int) CMTimeCodeFormatType.TimeCode32), Is.EqualTo ("tmcd"), "TimeCode32");
Assert.That (FourCC ((int) CMTimeCodeFormatType.TimeCode64), Is.EqualTo ("tc64"), "TimeCode64");
}
[Test]
public void VideoCodecType ()
{
Assert.That (FourCC ((int) CMVideoCodecType.Animation), Is.EqualTo ("rle "), "Animation");
Assert.That (FourCC ((int) CMVideoCodecType.AppleProRes422), Is.EqualTo ("apcn"), "AppleProRes422");
Assert.That (FourCC ((int) CMVideoCodecType.AppleProRes422HQ), Is.EqualTo ("apch"), "AppleProRes422HQ");
Assert.That (FourCC ((int) CMVideoCodecType.AppleProRes422LT), Is.EqualTo ("apcs"), "AppleProRes422LT");
Assert.That (FourCC ((int) CMVideoCodecType.AppleProRes422Proxy), Is.EqualTo ("apco"), "AppleProRes422Proxy");
Assert.That (FourCC ((int) CMVideoCodecType.AppleProRes4444), Is.EqualTo ("ap4h"), "AppleProRes4444");
Assert.That (FourCC ((int) CMVideoCodecType.Cinepak), Is.EqualTo ("cvid"), "Cinepak");
Assert.That (FourCC ((int) CMVideoCodecType.DvcNtsc), Is.EqualTo ("dvc "), "DvcNtsc");
Assert.That (FourCC ((int) CMVideoCodecType.DvcPal), Is.EqualTo ("dvcp"), "DvcPal");
Assert.That (FourCC ((int) CMVideoCodecType.DvcPro50NTSC), Is.EqualTo ("dv5n"), "DvcPro50NTSC");
Assert.That (FourCC ((int) CMVideoCodecType.DvcPro50PAL), Is.EqualTo ("dv5p"), "DvcPro50PAL");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProHD1080i50), Is.EqualTo ("dvh5"), "DvcProHD1080i50");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProHD1080i60), Is.EqualTo ("dvh6"), "DvcProHD1080i60");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProHD1080p25), Is.EqualTo ("dvh2"), "DvcProHD1080p25");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProHD1080p30), Is.EqualTo ("dvh3"), "DvcProHD1080p30");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProHD720p50), Is.EqualTo ("dvhq"), "DvcProHD720p50");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProHD720p60), Is.EqualTo ("dvhp"), "DvcProHD720p60");
Assert.That (FourCC ((int) CMVideoCodecType.DvcProPal), Is.EqualTo ("dvpp"), "DvcProPal");
Assert.That (FourCC ((int) CMVideoCodecType.H263), Is.EqualTo ("h263"), "H263");
Assert.That (FourCC ((int) CMVideoCodecType.H264), Is.EqualTo ("avc1"), "H264");
Assert.That (FourCC ((int) CMVideoCodecType.JPEG), Is.EqualTo ("jpeg"), "JPEG");
Assert.That (FourCC ((int) CMVideoCodecType.JPEG_OpenDML), Is.EqualTo ("dmb1"), "JPEG_OpenDML");
Assert.That (FourCC ((int) CMVideoCodecType.Mpeg1Video), Is.EqualTo ("mp1v"), "Mpeg1Video");
Assert.That (FourCC ((int) CMVideoCodecType.Mpeg2Video), Is.EqualTo ("mp2v"), "Mpeg2Video");
Assert.That (FourCC ((int) CMVideoCodecType.Mpeg4Video), Is.EqualTo ("mp4v"), "Mpeg4Video");
Assert.That (FourCC ((int) CMVideoCodecType.SorensonVideo), Is.EqualTo ("SVQ1"), "SorensonVideo");
Assert.That (FourCC ((int) CMVideoCodecType.SorensonVideo3), Is.EqualTo ("SVQ3"), "SorensonVideo3");
Assert.That (FourCC ((int) CMVideoCodecType.YUV422YpCbCr8), Is.EqualTo ("2vuy"), "YUV422YpCbCr8");
}
[Test]
public void PixelFormat ()
{
Assert.That ((int) CMPixelFormat.AlphaRedGreenBlue32bits, Is.EqualTo (32), "AlphaRedGreenBlue32bits");
Assert.That (FourCC ((int) CMPixelFormat.BlueGreenRedAlpha32bits), Is.EqualTo ("BGRA"), "BlueGreenRedAlpha32bits");
Assert.That ((int) CMPixelFormat.RedGreenBlue24bits, Is.EqualTo (24), "RedGreenBlue24bits");
Assert.That ((int) CMPixelFormat.BigEndian555_16bits, Is.EqualTo (16), "BigEndian555_16bits");
Assert.That (FourCC ((int) CMPixelFormat.BigEndian565_16bits), Is.EqualTo ("B565"), "BigEndian565_16bits");
Assert.That (FourCC ((int) CMPixelFormat.LittleEndian555_16bits), Is.EqualTo ("L555"), "LittleEndian555_16bits");
Assert.That (FourCC ((int) CMPixelFormat.LittleEndian565_16bits), Is.EqualTo ("L565"), "LittleEndian565_16bits");
Assert.That (FourCC ((int) CMPixelFormat.LittleEndian5551_16bits), Is.EqualTo ("5551"), "LittleEndian5551_16bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCr422_8bits), Is.EqualTo ("2vuy"), "YpCbCr422_8bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCr422yuvs_8bits), Is.EqualTo ("yuvs"), "YpCbCr422yuvs_8bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCr444_8bits), Is.EqualTo ("v308"), "YpCbCr444_8bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCrA4444_8bits), Is.EqualTo ("v408"), "YpCbCrA4444_8bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCr422_16bits), Is.EqualTo ("v216"), "YpCbCr422_16bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCr422_10bits), Is.EqualTo ("v210"), "YpCbCr422_10bits");
Assert.That (FourCC ((int) CMPixelFormat.YpCbCr444_10bits), Is.EqualTo ("v410"), "YpCbCr444_10bits");
Assert.That ((int) CMPixelFormat.IndexedGrayWhiteIsZero_8bits, Is.EqualTo (40), "YpCbCr444_10bits");
}
}
}
#endif // !__WATCHOS__