From 931d31a4404b247df4a0f2b3f29d5d7eb919656a Mon Sep 17 00:00:00 2001 From: Haesu Gwon Date: Wed, 6 Jul 2022 14:00:27 +0900 Subject: [PATCH] [TCSACR-489][Multimedia] Add new Create API to support increasing ref count Change-Id: Ia8f9392eae17aa1056e6b16e3c5bb2bbfc54934b --- .../testcase/MediaTool/TSMediaPacket.cs | 78 +++++++++++++++++++++- 1 file changed, 77 insertions(+), 1 deletion(-) diff --git a/tct-suite-vs/Tizen.Multimedia.Tests/testcase/MediaTool/TSMediaPacket.cs b/tct-suite-vs/Tizen.Multimedia.Tests/testcase/MediaTool/TSMediaPacket.cs index 15981cb..80c6f9d 100644 --- a/tct-suite-vs/Tizen.Multimedia.Tests/testcase/MediaTool/TSMediaPacket.cs +++ b/tct-suite-vs/Tizen.Multimedia.Tests/testcase/MediaTool/TSMediaPacket.cs @@ -14,6 +14,82 @@ namespace Tizen.Multimedia.Tests private ulong _maxBpsDefault = ulong.MaxValue; [Test] + [Category("P1")] + [Description("Test Create whether throws exception or not.")] + [Property("SPEC", "Tizen.Multimedia.MediaPacket.Create M")] + [Property("SPEC_URL", "-")] + [Property("CRITERIA", "MR")] + [Property("COVPARAM", "MediaFormat")] + [Property("AUTHOR", "Haesu Gwon, haesu.gwon@samsung.com")] + public void Create_CHECK_CREATE_WITH_MEDIAFORMAT() + { + try + { + MediaPacket packet = MediaPacket.Create(SimpleFormat); + packet.Dispose(); + } + catch + { + Assert.Fail("Should not throw exception"); + } + } + + [Test] + [Category("P1")] + [Description("Test Create whether throws exception or not.")] + [Property("SPEC", "Tizen.Multimedia.MediaPacket.Create M")] + [Property("SPEC_URL", "-")] + [Property("CRITERIA", "MR")] + [Property("COVPARAM", "MediaPacket")] + [Property("AUTHOR", "Haesu Gwon, haesu.gwon@samsung.com")] + public void Create_CHECK_CREATE_WITH_MEDIAPACKET() + { + MediaPacket packet1 = MediaPacket.Create(SimpleFormat); + + try + { + MediaPacket packet2 = MediaPacket.Create(packet1); + packet2.Dispose(); + } + catch + { + Assert.Fail("Should not throw exception"); + } + finally + { + packet1.Dispose(); + } + } + + [Test] + [Category("P1")] + [Description("Test Create whether packets are disposed independently.")] + [Property("SPEC", "Tizen.Multimedia.MediaPacket.Create M")] + [Property("SPEC_URL", "-")] + [Property("CRITERIA", "MR")] + [Property("COVPARAM", "MediaPacket")] + [Property("AUTHOR", "Haesu Gwon, haesu.gwon@samsung.com")] + public void Create_CHECK_INDEPENDENT_DISPOSE() + { + MediaPacket packet1 = MediaPacket.Create(SimpleFormat); + MediaPacket packet2 = MediaPacket.Create(packet1); + + packet1.Dispose(); + + try + { + Assert.Throws(() => { var v = packet1.Format; }); + + Assert.That(() => packet2.Format.Type == MediaFormatType.Audio, + "Should not throw exception even if packet1 is already disposed"); + } + finally + { + packet2.Dispose(); + } + } + + [Test] [Category("P2")] [Description("Throw a parameter is null when creating MediaPacket")] [Property("SPEC", "Tizen.Multimedia.MediaPacket.Create M")] @@ -23,7 +99,7 @@ namespace Tizen.Multimedia.Tests public void Create_NULL_MEDIA_FORMAT() { Assert.Throws( - () => MediaPacket.Create(null)); + () => MediaPacket.Create((MediaFormat)null)); } [Test] -- 2.7.4