From ed041b098a610e624cffc32b221234bfe54c54e7 Mon Sep 17 00:00:00 2001 From: paulhu Date: Fri, 10 Apr 2020 09:21:41 +0800 Subject: [PATCH] Add TetherableInterfaceRegexps CTS tests Test APIs below: getTetherableWifiRegexs() getTetherableUsbRegexs() getTetherableBluetoothRegexs() TetheringInterfaceRegexps.getTetherableWifiRegexs() TetheringInterfaceRegexps.getTetherableUsbRegexs() TetheringInterfaceRegexps.getTetherableBluetoothRegexs() Bug: 152737526 Test: atest CtsTetheringTest Change-Id: Icb7d8718d0aa6574b4c9dd1e17d7feb300fad2aa --- .../tethering/cts/TetheringManagerTest.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/tests/cts/tethering/src/android/tethering/cts/TetheringManagerTest.java b/tests/cts/tethering/src/android/tethering/cts/TetheringManagerTest.java index b132982e1a..193a5dc3a4 100644 --- a/tests/cts/tethering/src/android/tethering/cts/TetheringManagerTest.java +++ b/tests/cts/tethering/src/android/tethering/cts/TetheringManagerTest.java @@ -428,4 +428,30 @@ public class TetheringManagerTest { tetherEventCallback.expectTetheredInterfacesChanged(null); mTM.unregisterTetheringEventCallback(tetherEventCallback); } + + @Test + public void testGetTetherableInterfaceRegexps() { + if (!mTM.isTetheringSupported()) return; + + final TestTetheringEventCallback tetherEventCallback = new TestTetheringEventCallback(); + mTM.registerTetheringEventCallback(c -> c.run(), tetherEventCallback); + tetherEventCallback.expectCallbackStarted(); + + final TetheringInterfaceRegexps tetherableRegexs = + tetherEventCallback.getTetheringInterfaceRegexps(); + final List wifiRegexs = tetherableRegexs.getTetherableWifiRegexs(); + final List usbRegexs = tetherableRegexs.getTetherableUsbRegexs(); + final List btRegexs = tetherableRegexs.getTetherableBluetoothRegexs(); + + assertEquals(wifiRegexs, Arrays.asList(mTM.getTetherableWifiRegexs())); + assertEquals(usbRegexs, Arrays.asList(mTM.getTetherableUsbRegexs())); + assertEquals(btRegexs, Arrays.asList(mTM.getTetherableBluetoothRegexs())); + + //Verify that any of interface name should only contain in one array. + wifiRegexs.forEach(s -> assertFalse(usbRegexs.contains(s))); + wifiRegexs.forEach(s -> assertFalse(btRegexs.contains(s))); + usbRegexs.forEach(s -> assertFalse(btRegexs.contains(s))); + + mTM.unregisterTetheringEventCallback(tetherEventCallback); + } }