From 344294199d77716b794a8a45a5dac13b6bdba657 Mon Sep 17 00:00:00 2001 From: Wootak Jung Date: Wed, 27 May 2020 11:36:45 +0900 Subject: [PATCH] [Bluetooth][TCSACR-311] Add StartLeScan TC Change-Id: Ib72d9d68d99ff3478a94ec5d33f4f660a129dfc9 Signed-off-by: Wootak Jung --- .../testcase/TSBluetoothAdapter.cs | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/tct-suite-vs/Tizen.Bluetooth.Tests/testcase/TSBluetoothAdapter.cs b/tct-suite-vs/Tizen.Bluetooth.Tests/testcase/TSBluetoothAdapter.cs index 38bf343..490fca6 100644 --- a/tct-suite-vs/Tizen.Bluetooth.Tests/testcase/TSBluetoothAdapter.cs +++ b/tct-suite-vs/Tizen.Bluetooth.Tests/testcase/TSBluetoothAdapter.cs @@ -714,5 +714,72 @@ namespace Tizen.Network.Bluetooth.Tests } } } + + [Test] + [Category("P1")] + [Description("Scan all avaiable LE devices")] + [Property("SPEC", "Tizen.Network.Bluetooth.BluetoothAdapter.StartLeScan M")] + [Property("SPEC_URL", "-")] + [Property("CRITERIA", "MCST")] + [Property("AUTHOR", "Wootak Jung, wootak.jung@samsung.com")] + [Property("COVPARAM", "BluetoothLeScanMode")] + public static async Task StartLeScan_MODE_CHECK_STATUS() + { + try + { + /* PRECONDITION + * 1. Enable Bluetooth + * 2. Register event handler + */ + if (!BluetoothAdapter.IsBluetoothEnabled) + { + Assert.Fail("Bluetooth is not enabled"); + return; + } + + EventHandler scanDeviceResultEventHandler = null; + scanDeviceResultEventHandler = (sender, e) => + { + Assert.IsTrue((int)e.Result == 0, "[TestCase][StartLeScan_MODE_CHECK_STATUS] Failed"); + _flagDiscovery = true; + }; + BluetoothAdapter.ScanResultChanged += scanDeviceResultEventHandler; + + /* TEST CODE */ + BluetoothAdapter.StartLeScan(BluetoothLeScanMode.Balanced); + _flagDiscovery = false; + await waitDiscoveryFlag(); + Assert.IsTrue(_flagDiscovery, "ScanResultChanged event is not getting called"); + BluetoothAdapter.StopLeScan(); + + BluetoothAdapter.StartLeScan(BluetoothLeScanMode.LowLatency); + _flagDiscovery = false; + await waitDiscoveryFlag(); + Assert.IsTrue(_flagDiscovery, "ScanResultChanged event is not getting called"); + BluetoothAdapter.StopLeScan(); + + BluetoothAdapter.StartLeScan(BluetoothLeScanMode.LowEnergy); + _flagDiscovery = false; + await waitDiscoveryFlag(); + Assert.IsTrue(_flagDiscovery, "ScanResultChanged event is not getting called"); + BluetoothAdapter.StopLeScan(); + + /* POSTCONDITION + * 1. Unregister event handler + */ + BluetoothAdapter.ScanResultChanged -= scanDeviceResultEventHandler; + } + catch (Exception ex) + { + if (ex is NotSupportedException) + { + Assert.IsTrue(_isBluetoothLeSupported == false, "Invalid NotSupportedException"); + } + else + { + Assert.Fail("Throwing exception " + ex.ToString()); + } + } + } } } -- 2.7.4