[Multiple Tests] Cherry picked changes from git_master

Following changes are cherry picked from git_master.
- ag/13403527
- ag/13567815
- ag/13717566
- ag/13712306
- ag/13712970
- ag/13778838

Bug: 174705814
Fixes: 174705814
Test: Verified the changes
Merged-In: I4bda6b836eb979a498ee0683bec16e85c31c2ef6
Change-Id: I31692c9817b73c77ab8b261c846fbdd1c1044673
diff --git a/acts_tests/tests/google/net/CaptivePortalTest.py b/acts_tests/tests/google/net/CaptivePortalTest.py
index 9895069..eaafa25 100644
--- a/acts_tests/tests/google/net/CaptivePortalTest.py
+++ b/acts_tests/tests/google/net/CaptivePortalTest.py
@@ -82,13 +82,13 @@
         """Verify sign in notification shows for captive portal."""
         curr_time = time.time()
         while time.time() < curr_time + TIME_OUT:
+            time.sleep(3) # wait for sometime before checking the notification
             screen_dump = uutils.get_screen_dump_xml(self.dut)
             nodes = screen_dump.getElementsByTagName('node')
             for node in nodes:
                 if SIGN_IN_NOTIFICATION in node.getAttribute(
                     'text') or CONNECTED in node.getAttribute('text'):
                   return
-            time.sleep(3) # wait for sometime before checking the notification
         asserts.fail("Failed to get sign in notification")
 
     def _verify_captive_portal(self, network, click_accept=ACCEPT_CONTINUE):
@@ -116,11 +116,11 @@
         # wait for sometime for captive portal connection to go through
         curr_time = time.time()
         while time.time() < curr_time + TIME_OUT:
+            time.sleep(3) # wait for sometime for AP to send DHCP info
             link_prop = self.dut.droid.connectivityGetActiveLinkProperties()
             self.log.debug("Link properties %s" % link_prop)
             if link_prop and link_prop[IFACE] == WLAN:
                 break
-            time.sleep(2)
 
         # verify connectivity
         asserts.assert_true(