[Multimedia.Manual][Non-ACR] Change button layout 73/216373/3
authorHaesu Gwon <haesu.gwon@samsung.com>
Thu, 24 Oct 2019 06:27:22 +0000 (15:27 +0900)
committerHaesu Gwon <haesu.gwon@samsung.com>
Thu, 24 Oct 2019 09:00:54 +0000 (18:00 +0900)
Change-Id: I76bbbcdfbb11e849e9a59ec9254ce8ed386da95d

tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/TSPlayer.cs
tct-suite-vs/Tizen.Multimedia.Manual.Tests/testcase/TSRadio.cs

index 5d267637ecf4c84c2737e161d5b426b7bd05d8c0..7b02a504e424cf1fffcfaf337bac54e40bbf12bc 100644 (file)
@@ -252,7 +252,7 @@ namespace Tizen.Multimedia.Tests
                 {
                     Text = str1,
                     HorizontalOptions = LayoutOptions.FillAndExpand,
-                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    VerticalOptions = LayoutOptions.FillAndExpand,
                     MinimumWidthRequest = 210,
                     MinimumHeightRequest = 45
                 };
@@ -260,7 +260,7 @@ namespace Tizen.Multimedia.Tests
                 {
                     Text = str2,
                     HorizontalOptions = LayoutOptions.FillAndExpand,
-                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    VerticalOptions = LayoutOptions.FillAndExpand,
                     MinimumWidthRequest = 210,
                     MinimumHeightRequest = 45
                 };
@@ -268,7 +268,7 @@ namespace Tizen.Multimedia.Tests
                 {
                     Text = str3,
                     HorizontalOptions = LayoutOptions.FillAndExpand,
-                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    VerticalOptions = LayoutOptions.FillAndExpand,
                     MinimumWidthRequest = 210,
                     MinimumHeightRequest = 45
                 };
@@ -296,6 +296,16 @@ namespace Tizen.Multimedia.Tests
                 {
                     await taskselect(3);
                 };
+
+                if (str2.Length == 0)
+                {
+                    _button_2.IsVisible = false;
+                }
+                if (str3.Length == 0)
+                {
+                    _button_3.IsVisible = false;
+                }
+
                 _testPage.ExecuteTC(layout);
             });
         }
index 82bb1fcf4f0db2de1cd6401ebd13933a2d7a9a40..6f82e81e5887cec75ca547187529db9b9c3976a9 100644 (file)
@@ -11,7 +11,12 @@ namespace Tizen.Multimedia.Tests
     public class RadioTests
     {
         private Radio _radio;
+        protected Button _button1;
+        protected Button _button2;
+        protected Button _button3;
+        protected Label _label;
         private bool _isRadioSupported = true;
+        private bool _isRadioStarted;
 
         [SetUp]
         public void SetUp()
@@ -30,65 +35,172 @@ namespace Tizen.Multimedia.Tests
         public void TearDown()
         {
             _radio?.Dispose();
+            _button1 = _button2 = _button3 = null;
+            _label = null;
+            _isRadioStarted = false;
         }
 
         private void OnStartClicked(object sender, EventArgs e)
         {
-            _radio.Start();
+            if (!_isRadioStarted)
+            {
+                _radio.Start();
+                _isRadioStarted = true;
+            }
         }
 
         private void OnStopClicked(object sender, EventArgs e)
         {
-            _radio.Stop();
+            if (_isRadioStarted)
+            {
+                _radio.Stop();
+                _isRadioStarted = false;
+            }
         }
 
-        private Label CreateLabel()
+        private async void OnSeekUpClicked(object sender, EventArgs e)
         {
-            return new Label()
+            if (_isRadioStarted)
             {
-                HorizontalTextAlignment = TextAlignment.Center,
-                HorizontalOptions = LayoutOptions.FillAndExpand,
-                VerticalOptions = LayoutOptions.CenterAndExpand,
-                MinimumWidthRequest = 160,
-                MinimumHeightRequest = 80
-            };
+                var btn = sender as Button;
+
+                btn.IsEnabled = false;
+                _label.Text = "Frequency : " + await _radio.SeekUpAsync();
+                btn.IsEnabled = true;
+            }
         }
 
-        private Button CreateButton(string text, EventHandler clickHandler)
+        private async void OnSeekDownClicked(object sender, EventArgs e)
         {
-            var btn = new Button()
+            if (_isRadioStarted)
             {
-                Text = text,
-                HorizontalOptions = LayoutOptions.FillAndExpand,
-                VerticalOptions = LayoutOptions.CenterAndExpand,
-                MinimumWidthRequest = 160,
-                MinimumHeightRequest = 45,
-            };
-
-            btn.Clicked += clickHandler;
-            return btn;
+                var btn = sender as Button;
+
+                btn.IsEnabled = false;
+                _label.Text = "Frequency : " + await _radio.SeekDownAsync();
+                btn.IsEnabled = true;
+            }
         }
 
-        private void PrepareLayout(params View[] views)
+        private async void OnScanClicked(object sender, EventArgs e)
         {
-            var layout = new StackLayout()
+            var btn = sender as Button;
+            var frequencies = new List<int>();
+            var tcs = new TaskCompletionSource<bool>();
+
+            btn.IsEnabled = false;
+
+            _radio.ScanUpdated += (_, args) => frequencies.Add(args.Frequency);
+            _radio.ScanCompleted += (_, args) => tcs.TrySetResult(true);
+            _radio.StartScan();
+
+            await Task.WhenAny(tcs.Task, Task.Delay(10000));
+
+            if (tcs.Task.IsCompleted)
             {
-                HorizontalOptions = LayoutOptions.FillAndExpand,
-                VerticalOptions = LayoutOptions.Start,
-                Orientation = StackOrientation.Horizontal,
-                MinimumHeightRequest = 120,
-                Padding = new Thickness()
-                {
-                    Top = 0,
-                },
-            };
+                btn.IsEnabled = true;
 
-            foreach (var v in views)
+                _label.Text = "Frequencies = " + string.Join(",", frequencies);
+            }
+        }
+
+        private void OnMuteClicked(object sender, EventArgs e)
+        {
+            if (_isRadioStarted)
             {
-                layout.Children.Add(v);
+                var btn = sender as Button;
+
+                if (_radio.IsMuted == false)
+                {
+                    _radio.IsMuted = true;
+                    btn.Text = "Unmute";
+                }
+                else
+                {
+                    _radio.IsMuted = false;
+                    btn.Text = "Mute";
+                }
             }
+        }
+
+        private async Task CreateButton(string str1, string str2 = "", string str3 = "")
+        {
+            var tcs = new TaskCompletionSource<bool>();
+
+            Device.BeginInvokeOnMainThread(() =>
+            {
+                _button1 = new Button()
+                {
+                    Text = str1,
+                    HorizontalOptions = LayoutOptions.FillAndExpand,
+                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    MinimumWidthRequest = 210,
+                    MinimumHeightRequest = 45
+                };
+                _button2 = new Button()
+                {
+                    Text = str2,
+                    HorizontalOptions = LayoutOptions.FillAndExpand,
+                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    MinimumWidthRequest = 210,
+                    MinimumHeightRequest = 45
+                };
+                _button3 = new Button()
+                {
+                    Text = str3,
+                    HorizontalOptions = LayoutOptions.FillAndExpand,
+                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    MinimumWidthRequest = 210,
+                    MinimumHeightRequest = 45
+                };
+                _label = new Label()
+                {
+                    Text = "",
+                    HorizontalOptions = LayoutOptions.FillAndExpand,
+                    VerticalOptions = LayoutOptions.Start,
+                    MinimumHeightRequest = 50,
+                    TextColor = Color.Black
+                };
+
+                var layout = new StackLayout()
+                {
+                    HorizontalOptions = LayoutOptions.FillAndExpand,
+                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    Orientation = StackOrientation.Horizontal,
+                    Children = {
+                        _button1,
+                        _button2,
+                        _button3,
+                    },
+                };
+
+                var mainLayout = new StackLayout()
+                {
+                    HorizontalOptions = LayoutOptions.FillAndExpand,
+                    VerticalOptions = LayoutOptions.CenterAndExpand,
+                    Orientation = StackOrientation.Vertical,
+                    Children =
+                    {
+                        layout,
+                        _label
+                    }
+                };
+
+                if (str2.Length == 0)
+                {
+                    _button2.IsVisible = false;
+                }
+                if (str3.Length == 0)
+                {
+                    _button3.IsVisible = false;
+                }
+
+                TestPage.GetInstance().ExecuteTC(mainLayout);
+
+                tcs.SetResult(true);
+            });
 
-            TestPage.GetInstance().ExecuteTC(layout);
+            await tcs.Task;
         }
 
         [Test]
@@ -112,10 +224,15 @@ namespace Tizen.Multimedia.Tests
                 return;
             }
 
-            PrepareLayout(CreateButton("Start", OnStartClicked),
-                CreateButton("Stop", OnStopClicked));
+            await CreateButton("Start", "Stop");
+
+            _button1.Clicked += OnStartClicked;
+            _button2.Clicked += OnStopClicked;
 
             await ManualTest.WaitForConfirm();
+
+            _button1.Clicked -= OnStartClicked;
+            _button2.Clicked -= OnStopClicked;
         }
 
         [Test]
@@ -139,10 +256,15 @@ namespace Tizen.Multimedia.Tests
                 return;
             }
 
-            PrepareLayout(CreateButton("Start", OnStartClicked),
-                CreateButton("Stop", OnStopClicked));
+            await CreateButton("Start", "Stop");
+
+            _button1.Clicked += OnStartClicked;
+            _button2.Clicked += OnStopClicked;
 
             await ManualTest.WaitForConfirm();
+
+            _button1.Clicked -= OnStartClicked;
+            _button2.Clicked -= OnStopClicked;
         }
 
         [Test]
@@ -167,23 +289,17 @@ namespace Tizen.Multimedia.Tests
                 return;
             }
 
-            var label = CreateLabel();
-
-            var onSeekUpClicked = new EventHandler(async (s, e) =>
-            {
-                var btn = s as Button;
-
-                btn.IsEnabled = false;
-                label.Text = "Frequency : " + await _radio.SeekUpAsync();
-                btn.IsEnabled = true;
-            });
+            await CreateButton("Start", "Seek Up", "Stop");
 
-            PrepareLayout(CreateButton("Start", OnStartClicked),
-                CreateButton("Seek Up", onSeekUpClicked),
-                CreateButton("Stop", OnStopClicked),
-                label);
+            _button1.Clicked += OnStartClicked;
+            _button2.Clicked += OnSeekUpClicked;
+            _button3.Clicked += OnStopClicked;
 
             await ManualTest.WaitForConfirm();
+
+            _button1.Clicked -= OnStartClicked;
+            _button2.Clicked -= OnSeekUpClicked;
+            _button3.Clicked -= OnStopClicked;
         }
 
         [Test]
@@ -208,23 +324,17 @@ namespace Tizen.Multimedia.Tests
                 return;
             }
 
-            var label = CreateLabel();
-
-            var onSeekDownClicked = new EventHandler(async (s, e) =>
-            {
-                var btn = s as Button;
-
-                btn.IsEnabled = false;
-                label.Text = "Frequency : " + await _radio.SeekDownAsync();
-                btn.IsEnabled = true;
-            });
+            await CreateButton("Start", "Seek Down", "Stop");
 
-            PrepareLayout(CreateButton("Start", OnStartClicked),
-                CreateButton("Seek Down", onSeekDownClicked),
-                CreateButton("Stop", OnStopClicked),
-                label);
+            _button1.Clicked += OnStartClicked;
+            _button2.Clicked += OnSeekDownClicked;
+            _button3.Clicked += OnStopClicked;
 
             await ManualTest.WaitForConfirm();
+
+            _button1.Clicked -= OnStartClicked;
+            _button2.Clicked -= OnSeekDownClicked;
+            _button3.Clicked -= OnStopClicked;
         }
 
         [Test]
@@ -248,34 +358,15 @@ namespace Tizen.Multimedia.Tests
                 return;
             }
 
-            var label = CreateLabel();
-            label.LineBreakMode = LineBreakMode.WordWrap;
+            await CreateButton("Scan");
 
-            var onScanClicked = new EventHandler(async (s, e) =>
-            {
-                var btn = s as Button;
-                var frequencies = new List<int>();
-                var tcs = new TaskCompletionSource<bool>();
+            _label.LineBreakMode = LineBreakMode.WordWrap;
 
-                btn.IsEnabled = false;
-
-                _radio.ScanUpdated += (_, args) => frequencies.Add(args.Frequency);
-                _radio.ScanCompleted += (_, args) => tcs.TrySetResult(true);
-                _radio.StartScan();
-
-                await Task.WhenAny(tcs.Task, Task.Delay(10000));
-
-                if (tcs.Task.IsCompleted)
-                {
-                    btn.IsEnabled = true;
-
-                    label.Text = "Frequencies = " + string.Join(",", frequencies);
-                }
-            });
-
-            PrepareLayout(CreateButton("Scan", onScanClicked), label);
+            _button1.Clicked += OnScanClicked;
 
             await ManualTest.WaitForConfirm();
+
+            _button1.Clicked -= OnScanClicked;
         }
 
         [Test]
@@ -300,27 +391,17 @@ namespace Tizen.Multimedia.Tests
                 return;
             }
 
-            var onMuteClicked = new EventHandler((s, e) =>
-            {
-                var btn = s as Button;
+            await CreateButton("Start", "Mute", "Stop");
 
-                if (_radio.IsMuted == false)
-                {
-                    _radio.IsMuted = true;
-                    btn.Text = "Unmute";
-                }
-                else
-                {
-                    _radio.IsMuted = false;
-                    btn.Text = "Mute";
-                }
-            });
-
-            PrepareLayout(CreateButton("Start", OnStartClicked),
-                CreateButton("Mute", onMuteClicked),
-                CreateButton("Stop", OnStopClicked));
+            _button1.Clicked += OnStartClicked;
+            _button2.Clicked += OnMuteClicked;
+            _button3.Clicked += OnStopClicked;
 
             await ManualTest.WaitForConfirm();
+
+            _button1.Clicked -= OnStartClicked;
+            _button2.Clicked -= OnMuteClicked;
+            _button3.Clicked -= OnStopClicked;
         }
     }
 }