コード例 #1
0
 def check_condition(self):
     if self.view_to_check is not None:
         self.step_data = ui_steps.wait_for_view_common(
             serial=self.serial,
             view_to_find=self.view_to_find,
             view_presence=self.view_presence)()
     return self.step_data
コード例 #2
0
 def do(self):
     try:
         if not ui_steps.click_button_common(
                 serial=self.serial,
                 view_to_find={"textContains": "Scan for Devices"},
                 scroll=False)():
             raise Exception(
                 "Scan for Devices object not found in menu list")
         if ui_steps.wait_for_view_common(
                 serial=self.serial,
                 view_to_find={"textContains": self.dev_name})():
             ui_steps.click_button_common(
                 serial=self.serial,
                 view_to_find={"textContains": self.dev_name},
                 view_to_check={"resourceId": "android:id/alertTitle"})()
             time.sleep(1)
             if not bluetooth_steps.PerformActionPairRequest(
                     serial=self.serial, action="Pair")():
                 raise Exception("Pair button not found in DUT list")
             if not bluetooth_steps.PerformActionPairRequest(
                     serial=self.serial_dev, action="Pair")():
                 raise Exception("Pair button not found in DEV list")
             time.sleep(10)
         else:
             self.step_data = False
     except Exception, e:
         self.set_errorm("CTS Verifier connection error", e.message)
         self.step_data = False
コード例 #3
0
 def do(self):
     # if self.home_state:
     #    self.logger.info("Home screen already present [ {0} ]".format(
     # self.serial))
     info = self.uidevice.info
     x = 410
     activity_bar_single_element_width = x / 6
     # In P dessert home resides at 1st position and click has to be done at
     # the center
     home_x_coordinate = activity_bar_single_element_width * 2 - \
         activity_bar_single_element_width / 2
     y = info['displaySizeDpY']
     home_y_coordinate = y - 30
     # cmd = "input tap 405 1050"
     cmd = "input tap {0} {1}".format(home_x_coordinate, home_y_coordinate)
     adb_connection = Adb(serial=self.serial)
     adb_connection.run_cmd(cmd)
     time.sleep(2)
     ui_steps.wait_for_view_common(view_to_find={"text": "Let's Drive"},
                                   serial=self.serial)()
     self.step_data = True
 def do(self):
     try:
         if not ui_steps.click_button_common(
                 serial=self.serial,
                 view_to_find={"textContains": "Scan for Devices"},
                 scroll=False)():
             raise Exception(
                 "Scan for Devices object not found in menu list")
         if ui_steps.wait_for_view_common(
                 serial=self.serial,
                 view_to_find={"textContains": self.dev_name})():
             ui_steps.click_button_common(
                 serial=self.serial,
                 view_to_find={"textContains": self.dev_name},
                 view_to_check={"textContains": "SENT MESSAGES"})()
             time.sleep(10)
         else:
             self.step_data = False
     except Exception, e:
         self.set_errorm("CTS Verifier connection error", e.message)
         self.step_data = False
                             view_to_check={"text": "OEM unlocking"},
                             serial=args["serial"])()

# for full report
ui_steps.click_button_common(view_to_find={"text": "Take bug report"},
                             view_to_check={"text": "Interactive report"},
                             serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "Full report"},
                             serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "REPORT"},
                             serial=args["serial"])()

# for interactive report
ui_steps.click_button_common(view_to_find={"text": "Take bug report"},
                             view_to_check={"text": "Interactive report"},
                             serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "Interactive report"},
                             serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "REPORT"},
                             serial=args["serial"])()

# teardown
# moving  to home to verify if the report has been submitted
ui_steps.press_home(serial=args["serial"])()
time.sleep(
    60
)  # Sleep is mentioned because captured BugReport might take few seconds to reflect on notifaction bar
ui_steps.wait_for_view_common(
    view_to_find={"text": "Tap to share your bug report"},
    serial=args["serial"])()
コード例 #6
0
# Run
ui_steps.enable_developer_options(serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "Developer options"},
                             view_to_check={"text": "OEM unlocking"},
                             serial=args["serial"])()

# option 1 animation off
ui_steps.click_button_common(
    view_to_find={"text": "Transition animation scale"},
    view_to_check={"text": "Animation off"},
    serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "Animation off"},
                             serial=args["serial"])()
ui_steps.wait_for_view_common(
    view_to_find={"text": "Animation off"},
    second_view_to_find={"className": "android.widget.TextView"},
    position="down",
    retrieve_info=True,
    serial=args["serial"])()["text"]

# option 2 Animation scale .5x
ui_steps.click_button_common(
    view_to_find={"text": "Transition animation scale"},
    view_to_check={"text": "Animation scale .5x"},
    serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "Animation scale .5x"},
                             serial=args["serial"])()
ui_steps.wait_for_view_common(
    view_to_find={"text": "Animation scale .5x"},
    second_view_to_find={"className": "android.widget.TextView"},
    position="down",
    retrieve_info=True,
コード例 #7
0
if dessert == "P":
    ui_steps.PressNotification(serial=args["serial"])()
    ui_steps.click_button_common(
        view_to_find={"resourceId": "com.android.systemui:id/settings_button"},
        serial=args["serial"])()
    ui_steps.click_button_common(view_to_find={"text": "More"},
                                 serial=args["serial"])()
    Settings_not_found = []
    Settings_to_check = {
        "Display", "Sound", "Wi‑Fi", "Bluetooth", "App info", "Date & time",
        "Users", "Accounts", "Security", "System"
    }
    for find in Settings_to_check:
        try:
            ui_steps.wait_for_view_common(view_to_find={"text": find},
                                          serial=args["serial"])()
        except:
            Settings_not_found.append(find)
            log.info(find + " option is not available in IVI settings")
    # Tear Down
    ui_steps.press_back(serial=args["serial"])()

else:
    ui_steps.press_home(serial=args["serial"])()
    ui_steps.click_button_common(
        view_to_find={"resourceId": "com.android.systemui:id/settings_button"},
        serial=args["serial"])()
    Settings_not_found = []
    Settings_to_check = {
        "Display", "Sound", "Wi‑Fi", "Bluetooth", "App info", "Date & time",
        "Users", "System"
コード例 #8
0
             optional=True,
             scroll=False)():
         ui_steps.click_button_common(
             serial=serial_dev,
             first_view_to_find={
                 "resourceId":
                 "com.google.android.music:id/list_context_menu"
             },
             second_view_to_find={"index": "2"},
             scroll=False)()
     ui_steps.press_media(serial=serial)()
     ui_steps.click_button_common(
         serial=serial, view_to_find={"textContains": "Bluetooth Audio"})()
     time.sleep(20)
     ui_steps.wait_for_view_common(
         serial=serial,
         view_to_find={"resourceId": "com.android.car.media:id/title"})()
     ui_steps.wait_for_view_common(
         serial=serial,
         view_to_find={"resourceId": "com.android.car.media:id/artist"})()
 if action_initiator == "Adjustvolumefromphone":
     ui_steps.open_app_from_allapps(serial=serial_dev,
                                    view_to_find={"text": "Play Music"})()
     ui_steps.click_button_common(
         serial=serial_dev,
         view_to_find={"description": "Show navigation drawer"},
         view_to_check={"text": "Music library"},
         optional=True)()
     ui_steps.click_button_common(serial=serial_dev,
                                  view_to_find={"text": "Music library"},
                                  view_to_check={"textContains": "SONGS"},
コード例 #9
0
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions
and limitations under the License.
?

SPDX-License-Identifier: Apache-2.0
"""

# Used defined libraries
from testlib.base.base_utils import parse_args
from testlib.scripts.android.ui import ui_steps

# ############# Get parameters ############
args = parse_args()

ui_steps.press_home(serial=args["serial"])()
ui_steps.press_car(serial=args["serial"])()
ui_steps.open_settings(serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "System"},
                             view_to_check={"textContains": "Languages"},
                             serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "About phone"},
                             view_to_check={"text": "Status"},
                             serial=args["serial"])()

print ui_steps.wait_for_view_common(view_to_find={"text": "Kernel version"},
                                    second_view_to_find={"className": "android.widget.TextView"},
                                    position="down",
                                    retrieve_info=True,
                                    serial=args["serial"])()["text"]
コード例 #10
0
adb_steps.reboot(reboot_timeout=400, serial=serial)()

ui_steps.press_home(serial=serial)()
ui_steps.press_car(serial=serial)()
ui_steps.open_settings(serial=serial)()
ui_steps.click_button_common(view_to_find={"text": "System"},
                             view_to_check={"textContains": "Languages"},
                             serial=serial)()
ui_steps.click_button_common(view_to_find={"text": "About phone"},
                             view_to_check={"text": "Status"},
                             serial=serial)()
ui_steps.click_button_common(view_to_find={"text": "Status"},
                             view_to_check={"text": "Up time"},
                             serial=serial)()

uptime = ui_steps.wait_for_view_common(
    view_to_find={"text": "Up time"},
    second_view_to_find={"className": "android.widget.TextView"},
    position="down",
    retrieve_info=True,
    serial=serial)()["text"]

# checking for uptime not greater than 10 minutes
if sum(x * int(t) for x, t in zip([3600, 60, 1], uptime.split(":"))) < 600:
    print "pass"
else:
    print "fail"

#Teardown
ui_steps.press_home(serial=serial)()
コード例 #11
0
import sys
# Used defined libraries
from testlib.base.base_utils import get_args
from testlib.scripts.android.ui import ui_steps
import time
# ############# Get parameters ############
globals().update(vars(get_args(sys.argv)))
args = {}
if script_args[0].upper() != 'NONE':
    for entry in script_args:
        key, val = entry.split("=")
        args[key] = val
# Setup
ui_steps.press_home(serial=serial)()
ui_steps.press_car(serial=serial)()
ui_steps.press_dialer(serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"Phone"},second_view_to_find={"className":"android.widget.ImageButton"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"Dial a number"},view_to_check={"text":"Dial a number"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"7"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"6"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"2"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"5"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"0"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"6"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"3"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"7"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"4"},serial=serial)()
ui_steps.click_button_common(view_to_find={"text":"7"},serial=serial)()
ui_steps.wait_for_view_common(view_to_find={"text":"(762) 506-3747"}, serial=serial)()
ui_steps.click_button_common(view_to_find={"className":"android.widget.ImageButton"},view_to_check={"text":"Phone"},serial=serial)()
コード例 #12
0
if "LOG_PATH" in os.environ:
    testlib_log_path = os.environ["LOG_PATH"]
else:
    import testlib
    testlib_log_path = os.path.dirname(testlib.__file__) + "/logs/"

log = logger.testlib_log(log_path=testlib_log_path, log_name="testlib_default")

# ############# Get parameters ############

args = parse_args()

ui_steps.press_home(serial=args["serial"])()
ui_steps.open_settings(serial=args["serial"])()
ui_steps.click_button_common(view_to_find={"text": "System"},
                             serial=args["serial"])()
if ui_steps.wait_for_view_common(view_to_find={"text": "Developer options"},
                                 optional=True,
                                 serial=args["serial"])():
    log.info("Developer option is already enabled")
else:
    ui_steps.enable_developer_options(serial=args["serial"])()
    log.info("Developer option is enabled")

ui_steps.enable_options_from_developer_options(
    serial=args["serial"], developer_options=["Force 4x MSAA"])()

# TearDown
ui_steps.disable_options_from_developer_options(
    serial=args["serial"], developer_options=["Force 4x MSAA"])()
コード例 #13
0
                               password = hotSpot_pass)()"""
   if  (hotSpot_security == "") or (hotSpot_security == "None"):
       wifi_steps.connect_wifi_from_UI(ap_name=hotSpot_name, scroll=True, open_wifi_settings=True,
                                       security=False, serial=ser)()
   else:
       wifi_steps.connect_wifi_from_UI(ap_name = hotSpot_name,scroll= True,open_wifi_settings=True,password = hotSpot_pass,serial=ser)()
   # wait until the reference device is connected
   wifi_steps.wait_until_connected(serial = ser)()
   # verify that reference device is connected
   wifi_steps.ping_gateway(serial = ser)()
   while iterations > 1:
          # if iterations !=1:
          print "iterations"
          wifi_steps.set_wifi(serial = ser, state="OFF",use_adb=False)()
          time.sleep(2)
          ui_steps.wait_for_view_common(view_to_find={"textContains": "To see available networks, turn"},
                                      timeout=1000, serial=ser)()
          wifi_steps.set_wifi(serial = ser, state="ON",use_adb=False)()
          wifi_steps.wait_until_connected(serial = ser)()
          # verify that reference device is connected
          wifi_steps.ping_gateway(serial = ser)()
          iterations=iterations-1
else:
	i=2
	no_of_clients=int(no_clients_back)
	while int(no_of_clients) > 0:
         	#On reference device
    	        # turn display on, if turned off on reference device
    	        ser="serial"+str(i)
    	        ser=args[ser]

    	        # connect to the HotSpot from reference device
コード例 #14
0
	wifi_steps.connect_wifi_from_UI(ap_name = ddwrt_ap1_name,scroll= True,open_wifi_settings=False,password = ddwrt_ap1_pass,serial=serial)()
        time.sleep(2)
        #ping to gateway
	wifi_steps.ping_gateway(serial = serial, trycount=10, timeout=30)()

        #wait for ap2 ssid from the list
	ui_steps.wait_for_view_with_scroll(view_to_find={"textContains": ddwrt_ap2_name}, timeout=1000, serial=serial)()
	#connect wifi to AP2
	wifi_steps.connect_wifi_from_UI(ap_name=ddwrt_ap2_name,scroll = True,
                                          password=ddwrt_ap2_pass,open_wifi_settings=False,
                                          serial=serial)()
        #ping to gateway
        wifi_steps.ping_gateway(serial=serial, trycount=10, timeout=30)()

	#Once DUt is connected to AP2, AP1 status on DUT should be saved
	ui_steps.wait_for_view_common(serial=serial, timeout=30000,view_to_find={"textContains": ddwrt_ap1_name},
                                   optional=False, second_view_to_find={"textMatches":"Saved"})()
	#Tap on first ap , this should connect to first ap with out providing the security key
	ui_steps.click_button_common(serial=serial, view_to_find={"textMatches":ddwrt_ap1_name})()
        time.sleep(3)
        wifi_steps.ping_gateway(serial=serial, trycount=10, timeout=30)()

	ui_steps.wait_for_view_with_scroll(view_to_find={"textContains": "Forget"},timeout=1000 ,serial = serial)()
	ui_steps.click_button_common(serial=serial, view_to_find={"textMatches": "Forget"})()
	#clean up to go to next iteration
        wifi_steps.forget_wifi_network(serial=serial,ap_name=ddwrt_ap1_name)()
	i = i-1

elif scenario == "check_password" :
        """ To test - general behaviour test - Show wifi password"""
        #connect device to AP , while entering password, password should be displayed .
        wifi_steps.connect_with_password(ap_name = ddwrt_ap1_name,scroll= True,open_settings=False,password = ddwrt_ap1_pass,show_password=True,serial=serial)()
コード例 #15
0
        bluetooth_steps.BtSetService(serial=serial,
                                     paired_device_name=PAIRING_DEV_NAME,
                                     state=False,
                                     service="Contact sharing",
                                     check_if_already=True,
                                     disable_profile_confirm=True,
                                     version=DUT_VERSION)()
        bluetooth_steps.BtSetService(serial=serial,
                                     paired_device_name=PAIRING_DEV_NAME,
                                     state=True,
                                     service="Contact sharing",
                                     check_if_already=False,
                                     disable_profile_confirm=True,
                                     version=DUT_VERSION)()
        ui_steps.press_car(serial=serial)()
        if not ui_steps.wait_for_view_common(
                serial=serial, view_to_find={"textContains": "Contacts"})():
            ui_steps.press_car(serial=serial)()
        if not ui_steps.click_button_common(
                serial=serial,
                view_to_find={"textContains": "Contacts"},
                view_to_check={"className": "android.widget.TextView"})():
            raise Exception("Contacts list not found")

    if action_initiator == "SyncContactDevice2":
        bluetooth_steps.ClickBluetoothSwitch(serial=serial,
                                             state="ON",
                                             version=DUT_VERSION)()
        bt_utils.bt_pair_devices(
            serial=serial,
            dev=serial_dev,
            dut_name=DUT_NAME,