def do(self): ui_steps.click_button(serial = self.serial, view_to_find = {"description": "Show navigation drawer"}, view_to_check = {"text": "My wishlist"})() ui_steps.click_button(serial = self.serial, view_to_find = {"text": "My wishlist"}, view_to_check = {"resourceId": "com.android.vending:id/play_card"})() if self.app_name: self.step_data = self.app_name ui_steps.click_button(serial = self.serial, view_to_find = {"text": self.app_name}, view_to_check = {"descriptionContains": "wishlist"})() else: item_no = self.uidevice(resourceId = "com.android.vending:id/play_card").count if item_no > 9: item_no = 5 else: item_no -= 1 self.app_no = random.randint(0, item_no) app_view = self.uidevice(resourceId = "com.android.vending:id/play_card", instance = self.app_no) self.step_data = app_view.info["text"] ui_steps.click_view(serial = self.serial, view = app_view, view_to_check = {"descriptionContains": "wishlist"})() ui_steps.click_button(serial = self.serial, view_to_find = {"description": "Remove from wishlist"}, view_to_check = {"description": "Include in wishlist"})() ui_steps.press_back(serial = self.serial)()
def do(self): index = 0 play_store_exists = ui_utils.is_view_displayed(serial = self.serial,\ view_to_find = {"text" : "Play store"}) if play_store_exists: while not ui_utils.is_view_displayed(serial = self.serial,\ view_to_find = {"resourceId" : "com.google.android.play.games:id/root_container",\ "index":index, "description" : "Play store"}): index += 1 else: index = 1 index += 1 title_exists = self.uidevice(resourceId="com.google.android.play.games:id/root_container",\ index=index).child(resourceId="com.google.android.play.games:id/title").exists image_exists = self.uidevice(resourceId="com.google.android.play.games:id/root_container",\ index=index).child(resourceId="com.google.android.play.games:id/image").exists price_exists = self.uidevice(resourceId="com.google.android.play.games:id/root_container",\ index=index).child(resourceId="com.google.android.play.games:id/primary_label").exists self.properties_exist = title_exists and image_exists and price_exists ui_steps.click_button(serial = self.serial,\ view_to_find = {"resourceId" : "com.google.android.play.games:id/overflow_menu"},\ view_to_check = {"text" : "View in Play Store"})() ui_steps.press_back(view_to_check={"text": "FEATURED"})()
def do(self): ui_steps.click_button(serial=self.serial, view_to_find={"text": "MORE"}, view_to_check={"text": "MORE"}, view_presence=False)() if self.app_no <> None: while True: self.uidevice(resourceId="com.android.vending:id/li_subtitle" ).wait.exists(timeout=10000) item_no = self.uidevice( resourceId="com.android.vending:id/li_subtitle").count if self.app_no > item_no: self.app_no = item_no app_view = self.uidevice( resourceId="com.android.vending:id/li_subtitle", instance=self.app_no) self.step_data = app_view.info["text"] ui_steps.click_view(serial=self.serial, view=app_view)() if self.uidevice(description="Include in wishlist").exists: break else: self.app_no = random.randint(0, item_no - 1) ui_steps.press_back(serial=self.serial)() else: self.step_data = self.app_name app_view = self.uidevice(text=self.app_name) ui_steps.wait_for_view(view_to_find={ "resourceId": "com.android.vending:id/search_button" }, timeout=30)() ui_steps.edit_text(serial=self.serial, view_to_find={ "resourceId": "com.android.vending:id/search_button" }, value=self.app_name)() self.uidevice.press("enter") ui_steps.click_button(serial=self.serial, view_to_find={"textContains": self.app_name}, view_to_check={"text": "INSTALL"})() if self.uidevice(descriptionContains=\ "Remove from wishlist").wait.exists(timeout=3000): ui_steps.click_button( serial=self.serial, view_to_find={"descriptionContains": "Remove from wishlist"}, view_to_check={"descriptionContains": "Include in wishlist"})() ui_steps.click_button( serial=self.serial, view_to_find={"description": "Include in wishlist"}, view_to_check={"description": "Remove from wishlist"})()
def check_condition(self): while True: ui_steps.press_back(serial = self.serial)() if self.uidevice(description = "Show navigation drawer").exists: break ui_steps.click_button(serial = self.serial, view_to_find = {"description": "Show navigation drawer"}, view_to_check = {"text": "My wishlist"})() ui_steps.click_button(serial = self.serial, view_to_find = {"text": "My wishlist"}, view_to_check = {"text": self.step_data})() return self.uidevice(text = self.step_data).exists
def do(self): ui_steps.click_button( view_to_find={'descriptionContains': 'Share with'})() ui_steps.click_button(view_to_find={'text': 'See all'})() if self.uidevice(text='Bluetooth').exists: ui_steps.click_button(view_to_find={'text': 'Bluetooth'})() else: ui_steps.press_back()() ui_steps.click_button(view_to_find={'instance': 13})() if self.uidevice(text='Turn on').exists: ui_steps.click_button(view_to_find={'text': 'Turn on'})()
def do(self): # Clear App data adb_steps.command(serial = self.serial, command = "adb shell pm clear com.intel.fmapp")() # start the FM Radio app adb_steps.am_start_command(serial = self.serial, component = "com.intel.fmapp/.MainActivity")() ui_steps.click_button_if_exists(serial = self.serial, view_to_find = {"resourceId":"android:id/button2"})() # go to Settings ui_steps.click_button(serial = self. serial, view_to_find = {"className": "android.widget.ImageButton"})() ui_steps.click_button(serial = self.serial, view_to_find = {"className": "android.widget.TextView"}, view_to_check = {"text": "Settings"})() # check or configure the RDS, TA, AF state if self.rds == "OFF" : ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable RDS"}, state = "OFF", relationship="right")() else: ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable RDS"}, state = "ON", relationship="right")() if self.ta == "OFF" : ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable TA"}, state = "OFF", relationship="right")() else: ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable TA"}, state = "ON", relationship="right")() if self.af == "OFF" : ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable AF"}, state = "OFF", relationship="right")() else: ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable AF"}, state = "ON", relationship="right")() ui_steps.press_back(serial = self. serial, view_to_check = {"text": "FM Radio"})() ui_steps.click_button(serial = self.serial, view_to_find = {"resourceId":"com.intel.fmapp:id/button_power"})() ui_steps.click_button_if_exists(serial = self.serial, view_to_find = {"resourceId":"android:id/button3"})() ui_steps.click_button(serial = self.serial, view_to_find = {"resourceId":"com.intel.fmapp:id/button_direct"})() ui_steps.edit_text(serial = self.serial, view_to_find = {"resourceId": "com.intel.fmapp:id/edit_frequency"}, value = self.frequency)() ui_steps.click_button_if_exists(serial = self.serial, view_to_find = {"resourceId":"android:id/button1"})() time.sleep(self.wait_time)
def do(self): for i in range(self.iterations): # go to Settings ui_steps.click_button(serial = self. serial, view_to_find = {"className": "android.widget.ImageButton"})() ui_steps.click_button(serial = self.serial, view_to_find = {"className": "android.widget.TextView"}, view_to_check = {"text": "Settings"})() ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable RDS"}, state = "OFF", relationship="right")() logcat_steps.grep_for(serial = self.serial, grep_for_text = "radio_hw: disable RDS decoding", text_presence = True)() logcat_steps.clear_logcat(serial = self.serial)() ui_steps.click_checkbox_button(serial = self.serial, view_to_find = {"text":"Enable RDS"}, state = "ON", relationship="right")() logcat_steps.grep_for(serial = self.serial, grep_for_text = "radio_hw: enable RDS decoding", text_presence = True)() ui_steps.press_back(serial = self. serial, view_to_check = {"text": "FM Radio"})() time.sleep(self.wait_time)
from testlib.base.base_utils import get_args globals().update(vars(get_args(sys.argv))) adb_steps.connect_device(serial=serial, port=adb_server_port)() globals().update({"version": adb_utils.get_android_version()}) uidevice = ui_device() app = uidevice(className='android.widget.FrameLayout') x_coord = app.info['bounds']['right'] y_coord = app.info['bounds']['bottom'] ui_steps.press_home()() for i in range(1, 4): ui_steps.press_all_apps()() ui_steps.press_back()() ui_steps.swipe(sx=x_coord - 500, sy=y_coord / 2, ex=x_coord, ey=y_coord / 2)() time.sleep(1) ui_steps.press_home()() for i in range(1, 4): ui_steps.press_all_apps()() ui_steps.press_back()() ui_steps.swipe(sx=x_coord - 10, sy=y_coord / 2, ex=x_coord - 500, ey=y_coord / 2)()
# ############################################################################# # # @filename: # # @description: Books / Open book # # @author: [email protected] # ############################################################################## import sys from testlib.scripts.android.adb import adb_steps from testlib.scripts.android.ui import ui_steps from testlib.scripts.gms.books import books_steps from testlib.base.base_utils import get_args from testlib.scripts.android.adb import adb_utils globals().update(vars(get_args(sys.argv))) adb_steps.connect_device(serial=serial)() globals().update({"version": adb_utils.get_android_version()}) books_steps.open_my_library(serial=serial)() books_steps.open_all_from_library()() books_steps.open_purchases_from_library()() books_steps.open_samples_from_library()() ui_steps.press_back(serial=serial)() ui_steps.press_home(serial=serial)()
from testlib.base.base_utils import get_args from testlib.scripts.android.adb import adb_utils globals().update(vars(get_args(sys.argv))) adb_steps.connect_device(serial=serial)() globals().update({"version": adb_utils.get_android_version()}) ui_steps.open_playstore(serial=serial)() playstore_utils.playstore_home(serial=serial) ui_steps.click_button(serial=serial, view_to_find={"text": "APPS"}, wait_time=10000, view_to_check={"text": "New + Updated Apps"})() playstore_steps.playstore_add_to_wishlist(serial=serial, random_app=True)() ui_steps.press_back(serial=serial, times=2)() ui_steps.click_button(serial=serial, view_to_find={"text": "GAMES"}, wait_time=10000, view_to_check={"text": "Browse our go-to games"})() playstore_steps.playstore_add_to_wishlist(serial=serial, random_app=True)() ui_steps.press_back(serial=serial)() ui_steps.click_button(serial=serial, view_to_find={"text": "BOOKS"}, wait_time=10000, view_to_check={"text": "Recommended for You"})() playstore_steps.playstore_add_to_wishlist(serial=serial, random_app=True)() ui_steps.press_back(serial=serial, times=2)() ui_steps.press_home(serial=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" } for find in Settings_to_check: try: ui_steps.wait_for_view_common(view_to_find={"text": find}, serial=args["serial"])()
steps.click_checkbox_button_with_ok(view_to_find = {"text":"Japanese IME"})() #Auto-replace: toggle it twice in order to leave it in the initial #state ui_utils.is_text_visible("Auto-replace") steps.click_checkbox_button_with_ok(view_to_find = {"text":"Auto-replace"})() steps.click_checkbox_button_with_ok(view_to_find = {"text":"Auto-replace"})() #Auto-capitalization: toggle it twice in order to leave it in the #initial state steps.click_checkbox_button_with_ok(view_to_find = {"text": "Auto-capitalization"})() steps.click_checkbox_button_with_ok(view_to_find = {"text": "Auto-capitalization"})() #Auto-punctuate: toggle it twice in order to leave it in the initial #state steps.click_checkbox_button_with_ok(view_to_find = {"text":"Auto-punctuate"})() steps.click_checkbox_button_with_ok(view_to_find = {"text":"Auto-punctuate"})() #open Voice Search ui_steps.click_button(print_error = "Failed to open Voice Search", view_to_find = {"text":"Voice Search"}, view_to_check = {"text":"Speech output"})() ui_steps.press_back(view_to_check = {"text":"Voice Search"})() ui_steps.press_home()()
def do(self): self.wrap_do() try: wifi_steps.set_wifi_security(serial=self.serial, security=self.security, password=self.password, EAP_method=self.EAP_method, phase_2_auth=self.phase_2_auth, user_certificate=self.user_certificate, identity=self.identity, anonymous_identity=self.anonymous_identity, ca_certificate=self.ca_certificate, clear_text_boxes=False)() except Exception: self.logger.debug("Install certificate again for TLS test retry") ui_steps.press_home(serial=self.serial)() wifi_steps.install_WIFI_certificate( serial=self.serial, cert_pass="******", cert_name="TLS_certificate", dut_pin=1234)() self.wrap_do() set_wifi_advanced_options(serial=self.serial, proxy=self.proxy, proxy_pac_url=self.proxy_pac_url, proxy_hostname=self.proxy_hostname, proxy_port=self.proxy_port, proxy_bypass=self.proxy_bypass, ip_settings=self.ip_settings, ip_address=self.ip_address, gateway=self.gateway, network_prefix_length=self.network_prefix_length, dns1=self.dns1, dns2=self.dns2, clear_text_boxes=False)() # Implementation of adding Hidden network capability that is changed in # UI, P dessert onwards if self.hidden_ssid == '1': if adb_utils.is_virtual_keyboard_on(serial=self.serial): ui_steps.press_back(serial=self.serial)() # The attributes of the below View To Find has to be taken properly # to work. This is temporary and fails some times. Add scroll = # False ui_steps.click_button(serial=self.serial, view_to_find={ "resourceId": "com.android.settings:id/wifi_advanced_toggle"}, view_to_check={"textContains": "Hidden network"}, scroll=False)() ui_steps.click_button(serial=self.serial, view_to_find={ "resourceId": "com.android.settings:id/hidden_settings"}, view_to_check={"textContains": "Yes"}, scroll=False)() ui_steps.click_button(serial=self.serial, view_to_find={"textContains": "Yes"}, view_to_check={"textContains": "SAVE"}, scroll=False)() # Click Save apply_config_btn = { "className": "android.widget.Button", "enabled": True} apply_config_btn.update(self.device_info.wifi_add_network_save_btn_id) print apply_config_btn if self.apply_config: # if self.valid_config: # ui_steps.click_button(serial=self.serial, # view_to_find = {"textContains" : "SAVE"})() # # view_to_check = {"descriptionContains" : "Add network"})() # ui_steps.click_button(serial=self.serial, # view_to_find={'className': 'android.widget.Button', 'enabled': True, # 'textContains': 'SAVE'}, # view_to_check=None)() # else: apply_config_btn.update({"enabled": False}) ui_steps.click_button(serial=self.serial, view_to_find={'className': 'android.widget.Button', 'enabled': True, 'textContains': 'SAVE'})() else: ui_steps.click_button(serial=self.serial, view_to_find=apply_config_btn)() # Sometimes, the AP will not connected at once after the account has # been saved, so force to connect to the AP if self.apply_config: if self.uidevice(resourceId="android:id/title", text=self.ssid).wait.exists(timeout=1000): self.uidevice( resourceId="android:id/title", text=self.ssid).click.wait() if self.uidevice(textMatches="^(?i)connect$").exists: self.uidevice(textMatches="^(?i)connect$").click.wait()
cmd_vid = "am start -a android.media.action.VIDEO_CAPTURE" dut.run_cmd(cmd_vid) cam_landing_page() uidevice(packageName="com.android.camera2", description="Shutter").click() sleep(10) uidevice(packageName="com.android.camera2", description="Shutter").click() sleep(1) if done_btn.exists: done_btn.click() launch_photo = "am start com.google.android.apps.photos" dut.run_cmd(launch_photo) if uidevice(className="android.widget.Switch").exists: ui_steps.click_button_if_exists(serial=serial, view_to_find={"text": "ON"})() ui_steps.press_back(serial=serial, view_to_check={"text": "Keep off"})() ui_steps.click_button_if_exists(serial=serial, view_to_find={"text": "Keep off"})() img = uidevice(className="android.view.ViewGroup", descriptionContains="Photo") vid = uidevice(className="android.view.ViewGroup", descriptionContains="Video") count_img = img.count count_vid = vid.count #open image img[count_img - 1].click() uidevice(packageName="com.google.android.apps.photos", descriptionContains="Edit").click.wait() editor = uidevice(packageName="com.google.android.apps.photos", descriptionContains="filter") from random import randint