From: Haesu Gwon Date: Thu, 17 May 2018 07:29:33 +0000 (+0900) Subject: [Tizen.Multimedia.Manual][Non-ACR][Change Extention.MediaView to CustomRenderer of... X-Git-Tag: public_m1_final~23^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=08c60557ab766bd7f29bf58e4ab5c43a9aadef73;p=test%2Ftct%2Fcsharp%2Fapi.git [Tizen.Multimedia.Manual][Non-ACR][Change Extention.MediaView to CustomRenderer of Camera, Recorder] Change-Id: Ie20805f121c40772114784d073a6ad3f63004655 Signed-off-by: Haesu Gwon --- diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Program.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Program.cs index 2884158..4010ccf 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Program.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Program.cs @@ -17,7 +17,6 @@ using System; using NUnit.Framework; using Xamarin.Forms; -using Tizen.Xamarin.Forms.Extension.Renderer; namespace XamarinApplication.Tizen { @@ -43,7 +42,6 @@ namespace XamarinApplication.Tizen { Console.WriteLine("TCT : Main()"); var app = new Program(); - TizenFormsExtension.Init(); global::Xamarin.Forms.Platform.Tizen.Forms.Init(app); app.Run(args); } diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Tizen.Multimedia.Manual.Tests.sln b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Tizen.Multimedia.Manual.Tests.sln index fa98b88..edb34f2 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Tizen.Multimedia.Manual.Tests.sln +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/Tizen.Multimedia.Manual.Tests.sln @@ -8,7 +8,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "nunit.framework", "..\nunit EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "nunitlite", "..\nunitlite\nunitlite.csproj", "{FDB8025A-C029-461F-895E-287B4C65939B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tizen.Multimedia.Support.Library", "..\Tizen.Multimedia.Support.Library\Tizen.Multimedia.Support.Library.csproj", "{B42F7C98-0918-4141-8C93-4B6263931E6E}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Multimedia.Support.Library", "..\Tizen.Multimedia.Support.Library\Tizen.Multimedia.Support.Library.csproj", "{B42F7C98-0918-4141-8C93-4B6263931E6E}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ManualTemplate", "..\Template\ManualTemplate\ManualTemplate.csproj", "{269F89A7-E648-4811-8421-844E00ACF5F0}" EndProject @@ -60,18 +60,42 @@ Global {FDB8025A-C029-461F-895E-287B4C65939B}.Release|x64.Build.0 = Release|Any CPU {FDB8025A-C029-461F-895E-287B4C65939B}.Release|x86.ActiveCfg = Release|Any CPU {FDB8025A-C029-461F-895E-287B4C65939B}.Release|x86.Build.0 = Release|Any CPU - {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.NUI|Any CPU.ActiveCfg = Debug|Any CPU - {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.NUI|Any CPU.Build.0 = Debug|Any CPU - {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|Any CPU.Build.0 = Release|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Debug|x64.ActiveCfg = Debug|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Debug|x64.Build.0 = Debug|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Debug|x86.ActiveCfg = Debug|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Debug|x86.Build.0 = Debug|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Release|Any CPU.Build.0 = Release|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Release|x64.ActiveCfg = Release|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Release|x64.Build.0 = Release|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Release|x86.ActiveCfg = Release|Any CPU + {B42F7C98-0918-4141-8C93-4B6263931E6E}.Release|x86.Build.0 = Release|Any CPU {269F89A7-E648-4811-8421-844E00ACF5F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {269F89A7-E648-4811-8421-844E00ACF5F0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {269F89A7-E648-4811-8421-844E00ACF5F0}.NUI|Any CPU.ActiveCfg = Debug|Any CPU - {269F89A7-E648-4811-8421-844E00ACF5F0}.NUI|Any CPU.Build.0 = Debug|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Debug|x64.ActiveCfg = Debug|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Debug|x64.Build.0 = Debug|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Debug|x86.ActiveCfg = Debug|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Debug|x86.Build.0 = Debug|Any CPU {269F89A7-E648-4811-8421-844E00ACF5F0}.Release|Any CPU.ActiveCfg = Release|Any CPU {269F89A7-E648-4811-8421-844E00ACF5F0}.Release|Any CPU.Build.0 = Release|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Release|x64.ActiveCfg = Release|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Release|x64.Build.0 = Release|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Release|x86.ActiveCfg = Release|Any CPU + {269F89A7-E648-4811-8421-844E00ACF5F0}.Release|x86.Build.0 = Release|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|x64.ActiveCfg = Debug|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|x64.Build.0 = Debug|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|x86.ActiveCfg = Debug|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Debug|x86.Build.0 = Debug|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|Any CPU.Build.0 = Release|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|x64.ActiveCfg = Release|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|x64.Build.0 = Release|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|x86.ActiveCfg = Release|Any CPU + {D36CED01-29BD-4EB3-8903-62E0BF2A822D}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCamera.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCamera.cs index ad3e97e..3e4a62b 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCamera.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCamera.cs @@ -30,14 +30,15 @@ namespace Tizen.Multimedia.Tests return; } - Camera.StateChanged += async (s, e) => + TestCamera.StateChanged += async (s, e) => { await Task.Delay(200); if (e.Current == CameraState.Preview) { _msgBox.Text = "Preview is started successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); } }; @@ -49,7 +50,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; }; @@ -89,19 +90,20 @@ namespace Tizen.Multimedia.Tests try { // Call StartPreview again to make invalid state intentionally. - Camera.StartPreview(); + TestCamera.StartPreview(); } catch (InvalidOperationException) { _msgBox.Text = "InvalidOperationException is occured correctly. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); return; } Assert.Fail("InvalidOperationException is not occured and TC is failed. Please go back to previous page."); }; - Camera.StartPreview(); + TestCamera.StartPreview(); await ManualTest.WaitForConfirm(); } @@ -124,12 +126,13 @@ namespace Tizen.Multimedia.Tests return; } - Camera.CaptureCompleted += (s, e) => + TestCamera.CaptureCompleted += (s, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _msgBox.Text = "Capture is completed successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); }; /* @@ -140,8 +143,8 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.Settings.CaptureResolution = new Size(640, 480); - Camera.StartPreview(); + TestCamera.Settings.CaptureResolution = new Size(640, 480); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -149,7 +152,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartCapture(); + TestCamera.StartCapture(); _button2.IsEnabled = false; }; @@ -187,13 +190,14 @@ namespace Tizen.Multimedia.Tests try { - Camera.Settings.CaptureResolution = new Size(640, 480); - Camera.StartCapture(); + TestCamera.Settings.CaptureResolution = new Size(640, 480); + TestCamera.StartCapture(); } catch (InvalidOperationException) { _msgBox.Text = "InvalidOperationException is occured correctly and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); return; } @@ -224,12 +228,13 @@ namespace Tizen.Multimedia.Tests return; } - Camera.CaptureCompleted += (s, e) => + TestCamera.CaptureCompleted += (s, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _msgBox.Text = "Capture is completed successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); }; /* @@ -241,8 +246,8 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { tokenSource = new CancellationTokenSource(); - Camera.Settings.CaptureResolution = new Size(640, 480); - Camera.StartPreview(); + TestCamera.Settings.CaptureResolution = new Size(640, 480); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -250,7 +255,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartCapture(3, 700, tokenSource.Token); + TestCamera.StartCapture(3, 700, tokenSource.Token); _button2.IsEnabled = false; }; @@ -292,13 +297,14 @@ namespace Tizen.Multimedia.Tests try { tokenSource = new CancellationTokenSource(); - Camera.Settings.CaptureResolution = new Size(640, 480); - Camera.StartCapture(5, 700, tokenSource.Token); + TestCamera.Settings.CaptureResolution = new Size(640, 480); + TestCamera.StartCapture(5, 700, tokenSource.Token); } catch (InvalidOperationException) { _msgBox.Text = "InvalidOperationException is occured correctly and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); return; } @@ -330,14 +336,14 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); + TestCamera.ChangeDevice(CameraDevice.Front); - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { - _msgBox.Text = "Face detection is started successfully and TC is passed. Please go back to previous page."; + _msgBox.Text = "Face detection is started successfully and TC is passed. " + + "Please go back to previous page."; - Camera.StopFaceDetection(); - ManualTest.Confirm(); + ConfirmAndHideView(); }; /* @@ -348,7 +354,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -356,7 +362,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -383,7 +389,7 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); + TestCamera.ChangeDevice(CameraDevice.Front); /* * TEST CODE @@ -397,12 +403,13 @@ namespace Tizen.Multimedia.Tests try { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); } catch (InvalidOperationException) { _msgBox.Text = "InvalidOperationException is occured correctly and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); return; } @@ -432,14 +439,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.FocusStateChanged += (s, e) => + TestCamera.FocusStateChanged += (s, e) => { if (Enum.IsDefined(typeof(CameraFocusState), e.State)) { - _msgBox.Text = "Focus state is changed successfully and TC is passed. Please go back to previous page."; + _msgBox.Text = "Focus state is changed successfully and TC is passed. " + + "Please go back to previous page."; + + TestCamera.StopFocusing(); - Camera.StopFocusing(); - ManualTest.Confirm(); + ConfirmAndHideView(); } }; @@ -451,7 +460,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -459,7 +468,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFocusing(true); + TestCamera.StartFocusing(true); _button2.IsEnabled = false; }; @@ -498,12 +507,13 @@ namespace Tizen.Multimedia.Tests try { - Camera.StartFocusing(true); + TestCamera.StartFocusing(true); } catch (InvalidOperationException) { _msgBox.Text = "InvalidOperationException is occured correctly and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + + ConfirmAndHideView(); return; } @@ -533,14 +543,13 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); + TestCamera.ChangeDevice(CameraDevice.Front); - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); - ManualTest.Confirm(); + ConfirmAndHideView(); }; /* @@ -551,7 +560,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -559,7 +568,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -586,14 +595,15 @@ namespace Tizen.Multimedia.Tests return; } - Camera.FocusStateChanged += (s, e) => + TestCamera.FocusStateChanged += (s, e) => { if (Enum.IsDefined(typeof(CameraFocusState), e.State)) { _msgBox.Text = "Focus state is changed successfully and TC is passed. Please go back to previous page."; - Camera.StopFocusing(); - ManualTest.Confirm(); + TestCamera.StopFocusing(); + + ConfirmAndHideView(); } }; @@ -605,7 +615,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -613,7 +623,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFocusing(true); + TestCamera.StartFocusing(true); _button2.IsEnabled = false; }; diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCameraFocusStateChangedEventArgs.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCameraFocusStateChangedEventArgs.cs index 3f9844a..e05e086 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCameraFocusStateChangedEventArgs.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSCameraFocusStateChangedEventArgs.cs @@ -27,14 +27,15 @@ namespace Tizen.Multimedia.Tests return; } - Camera.FocusStateChanged += (s, e) => + TestCamera.FocusStateChanged += (s, e) => { if (Enum.IsDefined(typeof(CameraFocusState), e.State)) { _msgBox.Text = "Focus state is changed successfully and TC is passed. Please go back to previous page."; - Camera.StopFocusing(); - ManualTest.Confirm(); + TestCamera.StopFocusing(); + + ConfirmAndHideView(); } }; @@ -46,7 +47,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -54,7 +55,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFocusing(true); + TestCamera.StartFocusing(true); _button2.IsEnabled = false; }; diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectedEventArgs.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectedEventArgs.cs index 091038c..699e40b 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectedEventArgs.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectedEventArgs.cs @@ -10,6 +10,15 @@ namespace Tizen.Multimedia.Tests [Description("Testing FaceDetectedEventArgs class")] public class FaceDetectedEventArgsTests : CameraTestBase { + [SetUp] + public void SetUp() + { + if (_isCameraSupported) + { + TestCamera.ChangeDevice(CameraDevice.Front); + } + } + [Test] [Category("P1")] [Description("MANUAL TEST : Test Faces property of FaceDetectedEventArgs")] @@ -29,14 +38,11 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); - ManualTest.Confirm(); + ConfirmAndHideView(); }; /* @@ -47,7 +53,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -55,7 +61,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectionData.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectionData.cs index f69c7ef..f2c3a3f 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectionData.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Camera/TSFaceDetectionData.cs @@ -15,6 +15,15 @@ namespace Tizen.Multimedia.Tests [Description("Testing FaceDetectionData class")] public class FaceDetectionDataTests : CameraTestBase { + [SetUp] + public void SetUp() + { + if (_isCameraSupported) + { + TestCamera.ChangeDevice(CameraDevice.Front); + } + } + [Test] [Category("P1")] [Description("MANUAL TEST : Test Id property of FaceDetectionData.")] @@ -34,19 +43,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); IList faces = e.Faces.ToList(); if (faces.Count() > 0) { if (faces[0].Id >= 0) { - ManualTest.Confirm(); + ConfirmAndHideView(); } } }; @@ -59,7 +65,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -67,7 +73,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -94,19 +100,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); IList faces = e.Faces.ToList(); if (faces.Count() > 0) { if (faces[0].Score >= 0) { - ManualTest.Confirm(); + ConfirmAndHideView(); } } }; @@ -119,7 +122,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -127,7 +130,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -154,19 +157,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); IList faces = e.Faces.ToList(); if (faces.Count() > 0) { if (faces[0].X >= 0) { - ManualTest.Confirm(); + ConfirmAndHideView(); } } }; @@ -179,7 +179,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -187,7 +187,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -214,19 +214,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); IList faces = e.Faces.ToList(); if (faces.Count() > 0) { if (faces[0].Y >= 0) { - ManualTest.Confirm(); + ConfirmAndHideView(); } } }; @@ -239,7 +236,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -247,7 +244,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -274,19 +271,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); IList faces = e.Faces.ToList(); if (faces.Count() > 0) { if (faces[0].Width >= 0) { - ManualTest.Confirm(); + ConfirmAndHideView(); } } }; @@ -299,7 +293,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -307,7 +301,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; @@ -334,19 +328,16 @@ namespace Tizen.Multimedia.Tests return; } - Camera.ChangeDevice(CameraDevice.Front); - - Camera.FaceDetected += (s, e) => + TestCamera.FaceDetected += (s, e) => { _msgBox.Text = "Face is detected successfully and TC is passed. Please go back to previous page."; - Camera.StopFaceDetection(); IList faces = e.Faces.ToList(); if (faces.Count() > 0) { if (faces[0].Height >= 0) { - ManualTest.Confirm(); + ConfirmAndHideView(); } } }; @@ -359,7 +350,7 @@ namespace Tizen.Multimedia.Tests _button1.Clicked += (sender, e) => { - Camera.StartPreview(); + TestCamera.StartPreview(); _button1.IsEnabled = false; _button2.IsEnabled = true; @@ -367,7 +358,7 @@ namespace Tizen.Multimedia.Tests _button2.Clicked += (sender, e) => { - Camera.StartFaceDetection(); + TestCamera.StartFaceDetection(); _button2.IsEnabled = false; }; diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Recorder/TSRecorder.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Recorder/TSRecorder.cs index 9d7996f..c9f09e1 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Recorder/TSRecorder.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/Recorder/TSRecorder.cs @@ -11,26 +11,21 @@ namespace Tizen.Multimedia.Tests { [TestFixture] [Description("Testing Recorder class")] - public class RecorderTests + public class RecorderTests : CameraTestBase { - private Camera _camera; private Recorder _videoRecorder; - private bool _isCameraSupported = true; private string _filePath; - private Button _button1; - private Button _button2; - private Button _button3; - private Label _currentState, _msgBox; [SetUp] public void SetUp() { try { - _camera = new Camera(CameraDevice.Rear); - var supportedVideoCodec = VideoRecorder.GetSupportedVideoCodecs().FirstOrDefault(); + var supportedVideoCodec = VideoRecorder.GetSupportedVideoCodecs().First( + codec => codec != RecorderVideoCodec.H263); var fileFormat = supportedVideoCodec.GetSupportedFileFormats().First(); - _videoRecorder = new VideoRecorder(_camera, supportedVideoCodec, fileFormat); + + _videoRecorder = new VideoRecorder(TestCamera, supportedVideoCodec, fileFormat); _filePath = StorageManager.Storages.Where(s => s.StorageType == StorageArea.Internal). FirstOrDefault().RootDirectory + "/recordertest"; @@ -53,129 +48,12 @@ namespace Tizen.Multimedia.Tests { _videoRecorder?.Dispose(); - _camera?.Dispose(); - if (File.Exists(_filePath)) { File.Delete(_filePath); } } - private async Task CheckCameraSupported(string msg) - { - if (_isCameraSupported == false) - { - await NotSupportedHelper.DisplayNotSupportedLabel(msg); - return true; - } - - return false; - } - - private async Task CreateButton(string str1, string str2 = "", string str3 = "") - { - var tcs = new TaskCompletionSource(); - - Device.BeginInvokeOnMainThread(() => - { - Extension.MediaView mediaView = new Extension.MediaView - { - IsVisible = true, - HorizontalOptions = LayoutOptions.FillAndExpand, - VerticalOptions = LayoutOptions.FillAndExpand, - MinimumWidthRequest = 100, - MinimumHeightRequest = 200 - }; - - _button1 = new Button() - { - Text = str1, - HorizontalOptions = LayoutOptions.CenterAndExpand, - VerticalOptions = LayoutOptions.CenterAndExpand, - MinimumWidthRequest = 210, - MinimumHeightRequest = 45 - }; - _button2 = new Button() - { - Text = str2, - HorizontalOptions = LayoutOptions.CenterAndExpand, - VerticalOptions = LayoutOptions.CenterAndExpand, - MinimumWidthRequest = 210, - MinimumHeightRequest = 45, - IsEnabled = false - }; - _button3 = new Button() - { - Text = str3, - HorizontalOptions = LayoutOptions.CenterAndExpand, - VerticalOptions = LayoutOptions.CenterAndExpand, - MinimumWidthRequest = 210, - MinimumHeightRequest = 45, - IsEnabled = false - }; - _currentState = new Label() - { - Text = "Current State : ", - HorizontalOptions = LayoutOptions.CenterAndExpand, - VerticalOptions = LayoutOptions.Start, - HeightRequest = 50, - TextColor = Color.White - }; - - _msgBox = new Label() - { - Text = "Start test.", - HorizontalOptions = LayoutOptions.CenterAndExpand, - VerticalOptions = LayoutOptions.Start, - MinimumHeightRequest = 50, - TextColor = Color.Black - }; - - mediaView.NativeViewCreated += (s, e) => - { - _camera.Display = new Display((MediaView)mediaView.NativeView); - }; - - var layout = new StackLayout() - { - HorizontalOptions = LayoutOptions.FillAndExpand, - VerticalOptions = LayoutOptions.CenterAndExpand, - Orientation = StackOrientation.Horizontal, - Children = { - _button1, - _button2, - _button3, - }, - }; - - var mainLayout = new StackLayout() - { - Orientation = StackOrientation.Vertical, - IsVisible = true, - HorizontalOptions = LayoutOptions.FillAndExpand, - VerticalOptions = LayoutOptions.FillAndExpand, - Spacing = 10, - Padding = new Thickness(10), - Children = - { - _currentState, - mediaView, - _msgBox, - layout - } - }; - - TestPage.GetInstance().ExecuteTC(new ContentPage() - { - Content = mainLayout - }); - - tcs.SetResult(true); - }); - - await tcs.Task; - } - [Test] [Category("P1")] [Description("MANUAL TEST : Test Start method of Recorder.")] @@ -202,7 +80,7 @@ namespace Tizen.Multimedia.Tests if (File.Exists(_filePath)) { _msgBox.Text = "Recording is started successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + ConfirmAndHideView(); } else { @@ -256,7 +134,7 @@ namespace Tizen.Multimedia.Tests if (File.Exists(_filePath)) { _msgBox.Text = "Recording is paused successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + ConfirmAndHideView(); } else { @@ -324,7 +202,7 @@ namespace Tizen.Multimedia.Tests if (File.Exists(_filePath)) { _msgBox.Text = "Recording file is saved successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + ConfirmAndHideView(); } else { @@ -385,7 +263,7 @@ namespace Tizen.Multimedia.Tests if (!File.Exists(_filePath)) { _msgBox.Text = "Recording is canceled successfully and TC is passed. Please go back to previous page."; - ManualTest.Confirm(); + ConfirmAndHideView(); } else { diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/CameraTestBase.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/CameraTestBase.cs index 01ae160..e51bad8 100755 --- a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/CameraTestBase.cs +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/CameraTestBase.cs @@ -5,19 +5,19 @@ using System.IO; using System.Linq; using System.Threading.Tasks; using Xamarin.Forms; -using Extension = Tizen.Xamarin.Forms.Extension; namespace Tizen.Multimedia.Tests { public class CameraTestBase { - protected Camera Camera { get; private set; } + protected Camera TestCamera { get; private set; } protected bool _isCameraSupported = true; protected Button _button1; protected Button _button2; protected Button _button3; protected Label _currentState, _msgBox; protected Image _image = null; + protected VideoView _videoView; protected const string LogTag = "Tizen.Multimedia.CameraTest"; [SetUp] @@ -25,7 +25,7 @@ namespace Tizen.Multimedia.Tests { try { - Camera = new Camera(CameraDevice.Rear); + TestCamera = new Camera(CameraDevice.Rear); } catch (NotSupportedException) when (FeatureChecker.IsSupported(Features.Camera) == false) { @@ -36,19 +36,19 @@ namespace Tizen.Multimedia.Tests [TearDown] public void Destroy() { - if (Camera != null) + if (TestCamera != null) { - if (Camera.State == CameraState.Captured) + if (TestCamera.State == CameraState.Captured) { - Camera.StartPreview(); - Camera.StopPreview(); + TestCamera.StartPreview(); + TestCamera.StopPreview(); } - else if (Camera.State == CameraState.Preview) + else if (TestCamera.State == CameraState.Preview) { - Camera.StopPreview(); + TestCamera.StopPreview(); } - Camera.Dispose(); + TestCamera.Dispose(); } } @@ -65,7 +65,7 @@ namespace Tizen.Multimedia.Tests protected async Task CheckContinuousCaptureSupported(string msg) { - if (Camera.Capabilities.IsContinuousCaptureSupported == false) + if (TestCamera.Capabilities.IsContinuousCaptureSupported == false) { await NotSupportedHelper.DisplayNotSupportedLabel(msg); return true; @@ -76,7 +76,7 @@ namespace Tizen.Multimedia.Tests protected async Task CheckFDSupported(string msg) { - if (Camera.Capabilities.IsFaceDetectionSupported == false) + if (TestCamera.Capabilities.IsFaceDetectionSupported == false) { await NotSupportedHelper.DisplayNotSupportedLabel(msg); return true; @@ -89,7 +89,7 @@ namespace Tizen.Multimedia.Tests { CameraAutoFocusMode supportedAutoFocusMode = CameraAutoFocusMode.None; - IList autoFocusModes = Camera.Capabilities.SupportedAutoFocusModes.ToList(); + IList autoFocusModes = TestCamera.Capabilities.SupportedAutoFocusModes.ToList(); foreach (var autoFocusMode in autoFocusModes) { if (autoFocusMode != CameraAutoFocusMode.None) @@ -108,13 +108,20 @@ namespace Tizen.Multimedia.Tests return false; } + protected void ConfirmAndHideView() + { + _videoView.IsVisible = false; + _currentState.Text = ""; + ManualTest.Confirm(); + } + protected async Task CreateButton(string str1, string str2 = "", string str3 = "") { var tcs = new TaskCompletionSource(); Device.BeginInvokeOnMainThread(() => { - Extension.MediaView mediaView = new Extension.MediaView + _videoView = new VideoView { IsVisible = true, HorizontalOptions = LayoutOptions.FillAndExpand, @@ -123,6 +130,11 @@ namespace Tizen.Multimedia.Tests MinimumHeightRequest = 200 }; + _videoView.NativeViewCreated += (s, e) => + { + TestCamera.Display = new Display((MediaView)(s as VideoView).NativeView); + }; + _button1 = new Button() { Text = str1, @@ -149,6 +161,14 @@ namespace Tizen.Multimedia.Tests MinimumHeightRequest = 45, IsEnabled = false }; + _currentState = new Label() + { + Text = "", + HorizontalOptions = LayoutOptions.CenterAndExpand, + VerticalOptions = LayoutOptions.Start, + HeightRequest = 50, + TextColor = Color.White + }; _msgBox = new Label() { @@ -159,11 +179,6 @@ namespace Tizen.Multimedia.Tests TextColor = Color.Black }; - mediaView.NativeViewCreated += (s, e) => - { - Camera.Display = new Display((MediaView)mediaView.NativeView); - }; - var layout = new StackLayout() { HorizontalOptions = LayoutOptions.FillAndExpand, @@ -186,7 +201,8 @@ namespace Tizen.Multimedia.Tests Padding = new Thickness(10), Children = { - mediaView, + _currentState, + _videoView, _msgBox, layout } diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/VideoView.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/VideoView.cs new file mode 100644 index 0000000..da1a295 --- /dev/null +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/VideoView.cs @@ -0,0 +1,53 @@ +using System; +using System.ComponentModel; +using Xamarin.Forms; + +namespace Tizen.Multimedia.Tests +{ + public class VideoView : View, IMediaViewController + { + internal static readonly BindablePropertyKey NativeViewPropertyKey = + BindableProperty.CreateReadOnly("NativeView", typeof(object), typeof(VideoView), default(object)); + + /// + /// BindableProperty. Identifies the NativeView bindable property. + /// + public static readonly BindableProperty NativeViewProperty = NativeViewPropertyKey.BindableProperty; + + /// + /// NativeView allows application developers to display the video output on screen. + /// + public object NativeView + { + get { return GetValue(NativeViewProperty); } + } + + /// + /// Occurs when the NativeView is created. + /// + public event EventHandler NativeViewCreated; + + [EditorBrowsable(EditorBrowsableState.Never)] + public void SetNativeView(object value) + { + SetValue(NativeViewPropertyKey, value); + } + + void IMediaViewController.SendNativeViewCreated() + { + NativeViewCreated?.Invoke(this, EventArgs.Empty); + } + } + + /// + /// This interface is for internal use by the platform renderers. + /// + public interface IMediaViewController : IViewController + { + /// + /// For internal use by the platform renderers. + /// + void SendNativeViewCreated(); + + } +} \ No newline at end of file diff --git a/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/VideoViewRenderer.cs b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/VideoViewRenderer.cs new file mode 100755 index 0000000..366584b --- /dev/null +++ b/tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/support/VideoViewRenderer.cs @@ -0,0 +1,46 @@ +using System; +using Xamarin.Forms.Platform.Tizen; +using Tizen.Multimedia.Tests; + +[assembly: ExportRenderer(typeof(VideoView), typeof(VideoViewRenderer))] +namespace Tizen.Multimedia.Tests +{ + public class VideoViewRenderer : VisualElementRenderer + { + MediaView _control; + + public VideoViewRenderer() { } + + protected override void OnElementChanged(ElementChangedEventArgs e) + { + if (_control == null) + { + _control = new MediaView(Forms.NativeParent); + SetNativeView(_control); + } + + if (e.OldElement != null) + { + _control.Resized -= NatvieViewResized; + } + + if (e.NewElement != null) + { + _control.Resized += NatvieViewResized; + + Element.SetNativeView(_control); + + IMediaViewController mediaView = Element as IMediaViewController; + + mediaView?.SendNativeViewCreated(); + } + + base.OnElementChanged(e); + } + + void NatvieViewResized(object sender, EventArgs e) + { + ((IMediaViewController)Element).NativeSizeChanged(); + } + } +} \ No newline at end of file