framework_gem 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/{lib/EXECUTION_ENGINE.md → EXECUTION_ENGINE.md} +0 -0
- data/{lib/Gemfile → Gemfile} +4 -1
- data/{lib/README.md → README.md} +0 -0
- data/{lib/config → config}/ConfigParams.xml +0 -0
- data/{lib/config → config}/ImageROI.xml +0 -0
- data/{lib/config → config}/ROI.xml +0 -0
- data/{lib/config → config}/Userlog4j.xml +0 -0
- data/{lib/config → config}/schema-docs/mode.xsd +0 -0
- data/{lib/config → config}/schema-docs/processTestJobs.xsd +0 -0
- data/{lib/config → config}/schema-docs/rackip.xsd +0 -0
- data/{lib/copy_ref_images.rb → copy_ref_images.rb} +0 -0
- data/{lib/copy_repo.rb → copy_repo.rb} +0 -0
- data/{lib/dsllib → dsllib}/common/dncs/dncs_utils.rb +0 -0
- data/{lib/dsllib → dsllib}/common/mas_db/mas_conductor.rb +0 -0
- data/{lib/dsllib → dsllib}/common/mas_db/mas_db.rb +0 -0
- data/{lib/dsllib → dsllib}/common/mas_db/mas_publish.rb +0 -0
- data/{lib/dsllib → dsllib}/common/mas_db/mas_rest_services.rb +0 -0
- data/{lib/dsllib → dsllib}/common/mas_db/mas_soap_services.rb +0 -0
- data/{lib/dsllib → dsllib}/common/mas_db/mas_utils.rb +0 -0
- data/{lib/dsllib → dsllib}/common/remote_diagnostics/mdn_remote_diagnostics.rb +0 -0
- data/{lib/dsllib → dsllib}/common/remote_diagnostics/odn_web_server.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/excel_export.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/excel_module.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/server_components_utils.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/stb_health_check_utils.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/sword_utils.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/tmc_utils.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/virtual_keyboard_navigator.rb +0 -0
- data/{lib/dsllib → dsllib}/common/utils/virtual_keyboard_vp_navigator.rb +0 -0
- data/{lib/dsllib → dsllib}/performance/DTA/roi.rb +0 -0
- data/{lib/dsllib → dsllib}/performance/DTA/utils.rb +0 -0
- data/{lib/dsllib → dsllib}/performance/iguide_concurrent_test/ROI.rb +0 -0
- data/{lib/dsllib → dsllib}/performance/iguide_concurrent_test/utils.rb +0 -0
- data/{lib/dsllib → dsllib}/performance/measure_tune.rb +0 -0
- data/{lib/dsllib → dsllib}/performance/perf_lib.rb +0 -0
- data/framework_gem.rb +3 -0
- data/lib/{lib/data_services → data_services}/channel.rb +0 -0
- data/lib/{lib/data_services → data_services}/data_services.rb +0 -0
- data/lib/{lib/data_services → data_services}/guide.rb +0 -0
- data/lib/{lib/data_services → data_services}/lineup.rb +0 -0
- data/lib/{lib/data_services → data_services}/program.rb +0 -0
- data/lib/{lib/data_services → data_services}/schedule.rb +0 -0
- data/lib/{lib/data_services → data_services}/splunk_connector.rb +0 -0
- data/lib/{lib/data_services → data_services}/splunk_data_reader.rb +0 -0
- data/lib/{lib/element → element}/element.rb +0 -0
- data/lib/{lib/extensions → extensions}/array_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/datetime_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/file_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/float_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/integer_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/nethttp_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/object_extensions.rb +0 -0
- data/lib/{lib/extensions → extensions}/string_extensions.rb +0 -0
- data/lib/helpers/tmc_helpers/core_helper/core_helper.rb +29 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/csv_helper/csv_helper.rb +0 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/email_helper/email_helper.rb +0 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/http_helper/http_helper.rb +0 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/roi_helper/roi_helper.rb +0 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/snmp_helper/snmp_helper.rb +0 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/ssh_helper/ssh_helper.rb +0 -0
- data/lib/{lib/helpers → helpers}/tmc_helpers/tmc_helpers.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/apple_tv/apple_tv_password_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/apple_tv/apple_tv_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/apple_tv/apple_tv_username_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/keyboard_layout.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/roku/roku_reset_pin_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/roku/roku_rsg_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/roku/roku_rsg_signin_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/roku/roku_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/roku/roku_signin_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/samsung_tv/samsung_tv_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/samsung_tv/samsung_tv_signin_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/stb/odn/odn_on_demand_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/stb/odn/odn_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/stb/spectrum/spectrum_netflix_email_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/stb/spectrum/spectrum_netflix_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/stb/spectrum/spectrum_netflix_name_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/stb/spectrum/spectrum_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/tivo/tivo_password_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/tivo/tivo_search_keyboard.rb +0 -0
- data/lib/{lib/keyboard → keyboard}/tivo/tivo_username_keyboard.rb +0 -0
- data/lib/{lib/keys → keys}/apple_tv/apple_tv_keys.rb +0 -0
- data/lib/{lib/keys → keys}/base_keys.rb +0 -0
- data/lib/{lib/keys → keys}/dta/dta_keys.rb +0 -0
- data/lib/{lib/keys → keys}/mdn/mdn_keys.rb +0 -0
- data/lib/{lib/keys → keys}/passport/passport_keys.rb +0 -0
- data/lib/{lib/keys → keys}/roku/roku_keys.rb +0 -0
- data/lib/{lib/keys → keys}/roku_tv/roku_tv_keys.rb +0 -0
- data/lib/{lib/keys → keys}/samsung_tv/samsung_tv_keys.rb +0 -0
- data/lib/{lib/keys → keys}/sara/sara_keys.rb +0 -0
- data/lib/{lib/keys → keys}/stb/iguide/iguide_keys.rb +0 -0
- data/lib/{lib/keys → keys}/stb/odn/odn_keys.rb +0 -0
- data/lib/{lib/keys → keys}/stb/spectrum/spectrum_keys.rb +0 -0
- data/lib/{lib/keys → keys}/stb/stb_keys.rb +0 -0
- data/lib/{lib/keys → keys}/tivo/tivo_keys.rb +0 -0
- data/lib/{lib/logger → logger}/multi_io.rb +0 -0
- data/lib/{lib/logger → logger}/tmc_dut_logger.rb +0 -0
- data/lib/{lib/logger → logger}/tmc_logger.rb +0 -0
- data/lib/{lib/mixins → mixins}/assignable.rb +0 -0
- data/lib/{lib/mixins → mixins}/can_have_special_methods.rb +0 -0
- data/lib/{lib/mixins → mixins}/enumish.rb +0 -0
- data/lib/{lib/new_platform.rb → new_platform.rb} +0 -0
- data/lib/{lib/new_sub_platform.rb → new_sub_platform.rb} +0 -0
- data/lib/{lib/platform → platform}/apple_tv/apple_tv.rb +0 -0
- data/lib/{lib/platform → platform}/apple_tv/apple_tv_1080/apple_tv_1080.rb +0 -0
- data/lib/{lib/platform → platform}/apple_tv/apple_tv_720/apple_tv_720.rb +0 -0
- data/lib/{lib/platform → platform}/dta/dta.rb +0 -0
- data/lib/{lib/platform → platform}/dta/dta_1080/dta_1080.rb +0 -0
- data/lib/{lib/platform → platform}/dta/dta_720/dta_720.rb +0 -0
- data/lib/{lib/platform → platform}/mdn/mdn.rb +0 -0
- data/lib/{lib/platform → platform}/mdn/mdn_1080/mdn_1080.rb +0 -0
- data/lib/{lib/platform → platform}/mdn/mdn_720/mdn_720.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/android/android.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/android/android_phone/android_phone.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/android/android_tablet/android_tablet.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/ios/ios.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/ios/ios_phone/ios_phone.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/ios/ios_tablet/ios_tablet.rb +0 -0
- data/lib/{lib/platform → platform}/mobile/mobile.rb +0 -0
- data/lib/{lib/platform → platform}/passport/passport.rb +0 -0
- data/lib/{lib/platform → platform}/passport/passport1080/passport_1080.rb +0 -0
- data/lib/{lib/platform → platform}/passport/passport_720/passport_720.rb +0 -0
- data/lib/{lib/platform → platform}/platform.rb +0 -0
- data/lib/{lib/platform → platform}/roku/roku.rb +0 -0
- data/lib/{lib/platform → platform}/roku/roku_720/roku_720.rb +0 -0
- data/lib/{lib/platform → platform}/roku_tv/roku_tv.rb +0 -0
- data/lib/{lib/platform → platform}/roku_tv/roku_tv_1080/roku_tv_1080.rb +0 -0
- data/lib/{lib/platform → platform}/roku_tv/roku_tv_720/roku_tv_720.rb +0 -0
- data/lib/{lib/platform → platform}/samsung_tv/samsung_tv.rb +0 -0
- data/lib/{lib/platform → platform}/samsung_tv/samsung_tv_1080/samsung_tv_1080.rb +0 -0
- data/lib/{lib/platform → platform}/samsung_tv/samsung_tv_720/samsung_tv_720.rb +0 -0
- data/lib/{lib/platform → platform}/sara/sara.rb +0 -0
- data/lib/{lib/platform → platform}/sara/sara_1080/sara_1080.rb +0 -0
- data/lib/{lib/platform → platform}/sara/sara_720/sara_720.rb +0 -0
- data/lib/{lib/platform → platform}/stb/iguide/iguide.rb +0 -0
- data/lib/{lib/platform → platform}/stb/iguide/iguide_1080/iguide_1080.rb +0 -0
- data/lib/{lib/platform → platform}/stb/iguide/iguide_720/iguide_720.rb +0 -0
- data/lib/{lib/platform → platform}/stb/odn/odn.rb +0 -0
- data/lib/{lib/platform → platform}/stb/odn/odn_1080/odn_1080.rb +0 -0
- data/lib/{lib/platform → platform}/stb/odn/odn_720/odn_720.rb +0 -0
- data/lib/{lib/platform → platform}/stb/odn/odn_720/odn_720_moto/odn_720_moto.rb +0 -0
- data/lib/{lib/platform → platform}/stb/odn/odn_720/odn_720_sa/odn_720_sa.rb +0 -0
- data/lib/{lib/platform → platform}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_1080/spectrum_1080.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_720/spectrum_720.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax.rb +0 -0
- data/lib/{lib/platform → platform}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch.rb +0 -0
- data/lib/{lib/platform → platform}/stb/stb.rb +0 -0
- data/lib/{lib/platform → platform}/template.txt +0 -0
- data/lib/{lib/platform → platform}/tivo/tivo.rb +0 -0
- data/lib/{lib/platform → platform}/tivo/tivo_1080/tivo_1080.rb +0 -0
- data/lib/{lib/platform → platform}/tivo/tivo_720/tivo_720.rb +0 -0
- data/lib/{lib/platform → platform}/web/web.rb +0 -0
- data/lib/{lib/platform_libs → platform_libs}/roku/roku_controller.rb +0 -0
- data/lib/{lib/prereqs → prereqs}/prereqs.rb +0 -0
- data/lib/{lib/prereqs → prereqs}/prereqs_for_dut.rb +0 -0
- data/lib/{lib/prereqs → prereqs}/prereqs_for_test.rb +0 -0
- data/lib/{lib/remotes → remotes}/remotes.rb +0 -0
- data/lib/{lib/remotes → remotes}/stb/spectrum/spectrum_remotes.rb +0 -0
- data/lib/{lib/roi → roi}/black/black_roi.rb +0 -0
- data/lib/{lib/roi → roi}/color/color_roi.rb +0 -0
- data/lib/{lib/roi → roi}/image/image_roi.rb +0 -0
- data/lib/{lib/roi → roi}/roi.rb +0 -0
- data/lib/{lib/roi → roi}/template_roi.txt +0 -0
- data/lib/{lib/roi → roi}/text/text_roi.rb +0 -0
- data/lib/{lib/roi → roi}/video/video_roi.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_1080/apple_tv_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_1080/apple_tv_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_1080/apple_tv_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_1080/apple_tv_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_1080/apple_tv_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_1080/apple_tv_1080_video_rois.rb +2 -1
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_720/apple_tv_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_720/apple_tv_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_720/apple_tv_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_720/apple_tv_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_720/apple_tv_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_720/apple_tv_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/apple_tv/apple_tv_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_1080/dta_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_1080/dta_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_1080/dta_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_1080/dta_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_1080/dta_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_1080/dta_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_720/dta_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_720/dta_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_720/dta_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_720/dta_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_720/dta_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_720/dta_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/dta/dta_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_1080/mdn_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_1080/mdn_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_1080/mdn_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_1080/mdn_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_1080/mdn_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_1080/mdn_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_720/mdn_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_720/mdn_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_720/mdn_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_720/mdn_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_720/mdn_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_720/mdn_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mdn/mdn_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_phone/android_phone_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_phone/android_phone_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_phone/android_phone_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_phone/android_phone_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_phone/android_phone_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_phone/android_phone_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_tablet/android_tablet_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_tablet/android_tablet_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_tablet/android_tablet_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_tablet/android_tablet_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_tablet/android_tablet_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_tablet/android_tablet_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/android/android_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_phone/ios_phone_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_phone/ios_phone_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_phone/ios_phone_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_phone/ios_phone_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_phone/ios_phone_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_phone/ios_phone_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_tablet/ios_tablet_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_tablet/ios_tablet_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_tablet/ios_tablet_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_tablet/ios_tablet_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_tablet/ios_tablet_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_tablet/ios_tablet_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/ios/ios_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/mobile_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/mobile_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/mobile_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/mobile_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/mobile_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/mobile/mobile_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_1080/passport_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_1080/passport_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_1080/passport_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_1080/passport_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_1080/passport_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_1080/passport_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_720/passport_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_720/passport_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_720/passport_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_720/passport_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_720/passport_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_720/passport_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/passport/passport_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_720/roku_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_720/roku_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_720/roku_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_720/roku_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_720/roku_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_720/roku_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku/roku_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_1080/roku_tv_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_1080/roku_tv_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_1080/roku_tv_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_1080/roku_tv_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_1080/roku_tv_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_1080/roku_tv_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_720/roku_tv_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_720/roku_tv_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_720/roku_tv_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_720/roku_tv_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_720/roku_tv_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_720/roku_tv_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/roku_tv/roku_tv_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_1080/samsung_tv_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_1080/samsung_tv_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_1080/samsung_tv_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_1080/samsung_tv_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_1080/samsung_tv_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_1080/samsung_tv_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_720/samsung_tv_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_720/samsung_tv_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_720/samsung_tv_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_720/samsung_tv_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_720/samsung_tv_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_720/samsung_tv_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/samsung_tv/samsung_tv_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_1080/sara_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_1080/sara_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_1080/sara_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_1080/sara_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_1080/sara_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_1080/sara_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_720/sara_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_720/sara_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_720/sara_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_720/sara_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_720/sara_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_720/sara_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/sara/sara_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_1080/iguide_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_1080/iguide_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_1080/iguide_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_1080/iguide_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_1080/iguide_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_1080/iguide_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_720/iguide_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_720/iguide_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_720/iguide_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_720/iguide_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_720/iguide_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_720/iguide_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/iguide/iguide_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_1080/odn_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_1080/odn_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_1080/odn_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_1080/odn_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_1080/odn_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_1080/odn_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_moto/odn_720_moto_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_moto/odn_720_moto_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_moto/odn_720_moto_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_moto/odn_720_moto_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_moto/odn_720_moto_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_moto/odn_720_moto_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_sa/odn_720_sa_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_sa/odn_720_sa_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_sa/odn_720_sa_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_sa/odn_720_sa_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_sa/odn_720_sa_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_sa/odn_720_sa_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_samsung/odn_720_samsung_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_720/odn_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/odn/odn_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis/spectrum_1080_docsis_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_arris/spectrum_1080_docsis_arris_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_humax/spectrum_1080_docsis_humax_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_docsis_tch/spectrum_1080_docsis_tch_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_pace/spectrum_1080_pace_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_1080/spectrum_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_arris/spectrum_720_docsis_arris_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_humax/spectrum_720_docsis_humax_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_docsis_tch/spectrum_720_docsis_tch_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_720/spectrum_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/spectrum/spectrum_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/stb_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/stb_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/stb_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/stb_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/stb_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/stb/stb_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/template.txt +0 -0
- data/lib/{User_Lib/rois → rois}/text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_1080/tivo_1080_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_1080/tivo_1080_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_1080/tivo_1080_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_1080/tivo_1080_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_1080/tivo_1080_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_1080/tivo_1080_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_720/tivo_720_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_720/tivo_720_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_720/tivo_720_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_720/tivo_720_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_720/tivo_720_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_720/tivo_720_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_black_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_color_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_image_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_text_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/tivo/tivo_video_rois.rb +0 -0
- data/lib/{User_Lib/rois → rois}/video_rois.rb +0 -0
- data/lib/{lib/screen → screen}/screen.rb +0 -0
- data/lib/{lib/screen → screen}/template.txt +0 -0
- data/lib/{lib/screen → screen}/template_screen.txt +0 -0
- data/lib/{lib/screens → screens}/apple_tv/apple_tv_screens.rb +0 -0
- data/lib/{lib/screens → screens}/dta/dta_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mdn/mdn_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/android/android_phone/android_phone_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/android/android_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/android/android_tablet/android_tablet_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/ios/ios_phone/ios_phone_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/ios/ios_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/ios/ios_tablet/ios_tablet_screens.rb +0 -0
- data/lib/{lib/screens → screens}/mobile/mobile_screens.rb +0 -0
- data/lib/{lib/screens → screens}/passport/passport_screens.rb +0 -0
- data/lib/{lib/screens → screens}/roku/roku_screens.rb +0 -0
- data/lib/{lib/screens → screens}/roku_tv/roku_tv_screens.rb +0 -0
- data/lib/{lib/screens → screens}/samsung_tv/samsung_tv_screens.rb +0 -0
- data/lib/{lib/screens → screens}/sara/sara_screens.rb +0 -0
- data/lib/{lib/screens → screens}/screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/iguide/iguide_1080/iguide_1080_screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/iguide/iguide_720/iguide_720_screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/iguide/iguide_screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/odn/odn_screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/spectrum/spectrum_docsis/spectrum_1080_docsis_screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/spectrum/spectrum_screens.rb +0 -0
- data/lib/{lib/screens → screens}/stb/stb_screens.rb +0 -0
- data/lib/{lib/screens → screens}/template.txt +0 -0
- data/lib/{lib/screens → screens}/tivo/tivo_screens.rb +0 -0
- data/lib/{lib/selenium → selenium}/appium/appium.rb +0 -0
- data/lib/{lib/selenium → selenium}/selenium.rb +0 -0
- data/lib/{lib/selenium → selenium}/webdriver/webdriver.rb +0 -0
- data/lib/{lib/test_case → test_case}/boilerplate/functional.rb +0 -0
- data/lib/{lib/test_case → test_case}/boilerplate/performance.rb +0 -0
- data/lib/{lib/test_case → test_case}/ci_test.rb +0 -0
- data/lib/{lib/test_case → test_case}/functional_test_case.rb +0 -0
- data/lib/{lib/test_case → test_case}/make_boilerplate.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/apple_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/base_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/dta_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/iguide_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/mdn_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/monitoring_test.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/odn_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/passport_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/report_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/roku_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/sara_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/monitoring/spec_monitor.rb +0 -0
- data/lib/{lib/test_case → test_case}/performance_test_case.rb +0 -0
- data/lib/{lib/test_case → test_case}/test_case.rb +0 -0
- data/lib/{lib/test_case → test_case}/test_error.rb +0 -0
- data/lib/{lib/test_case → test_case}/test_exception.rb +0 -0
- data/lib/{lib/test_case → test_case}/test_status.rb +0 -0
- data/lib/{lib/test_case → test_case}/test_step.rb +0 -0
- data/lib/{lib/test_case → test_case}/test_trace.rb +0 -0
- data/lib/{lib/test_data.rb → test_data.rb} +0 -0
- data/lib/test_wrapper.rb +95 -0
- data/{lib/misc → misc}/get_latest_android.sh +0 -0
- data/{lib/misc → misc}/get_latest_ios.sh +0 -0
- data/{lib/package-lock.json → package-lock.json} +0 -0
- data/{lib/syntax_eval.rb → syntax_eval.rb} +27 -35
- data/tmc-core.gemspec +9 -0
- data/{lib/tools → tools}/convert_old_scripts.rb +0 -0
- data/{lib/tools → tools}/find_duplicate_rois.rb +0 -0
- data/{lib/tools → tools}/roku/inspector.rb +0 -0
- data/{lib/tools → tools}/syntax_checker.rb +2 -4
- data/{lib/upload_ref_images.rb → upload_ref_images.rb} +0 -0
- metadata +576 -873
- data/lib/User_Lib/helpers/helpers.rb +0 -13
- data/lib/User_Lib/screen/apple_tv/apple_tv_dvr.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_guide.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_library.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_live_tv.rb +0 -17
- data/lib/User_Lib/screen/apple_tv/apple_tv_login.rb +0 -24
- data/lib/User_Lib/screen/apple_tv/apple_tv_main_menu.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_mini_guide.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_movies.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_on_demand.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_parental_controls.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_product_page.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_screen.rb +0 -23
- data/lib/User_Lib/screen/apple_tv/apple_tv_search.rb +0 -31
- data/lib/User_Lib/screen/apple_tv/apple_tv_settings.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_tv_shows.rb +0 -25
- data/lib/User_Lib/screen/apple_tv/apple_tv_video_store.rb +0 -25
- data/lib/User_Lib/screen/dta/dta_dvr.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_guide.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_library.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_live_tv.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_log_in.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_main_menu.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_mini_guide.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_movies.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_on_demand.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_parental_controls.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_product_page.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_screen.rb +0 -24
- data/lib/User_Lib/screen/dta/dta_search.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_settings.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_tv_shows.rb +0 -26
- data/lib/User_Lib/screen/dta/dta_video_store.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_dvr.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_guide.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_library.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_live_tv.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_log_in.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_main_menu.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_mini_guide.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_movies.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_on_demand.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_parental_controls.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_product_page.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_screen.rb +0 -24
- data/lib/User_Lib/screen/mdn/mdn_search.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_settings.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_tv_shows.rb +0 -26
- data/lib/User_Lib/screen/mdn/mdn_video_store.rb +0 -26
- data/lib/User_Lib/screen/mobile/android/android_devices.rb +0 -35
- data/lib/User_Lib/screen/mobile/android/android_dvr.rb +0 -337
- data/lib/User_Lib/screen/mobile/android/android_favorites.rb +0 -164
- data/lib/User_Lib/screen/mobile/android/android_guide.rb +0 -256
- data/lib/User_Lib/screen/mobile/android/android_live_tv.rb +0 -372
- data/lib/User_Lib/screen/mobile/android/android_login.rb +0 -111
- data/lib/User_Lib/screen/mobile/android/android_main_menu.rb +0 -53
- data/lib/User_Lib/screen/mobile/android/android_on_demand.rb +0 -402
- data/lib/User_Lib/screen/mobile/android/android_parental_controls.rb +0 -73
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_dvr.rb +0 -31
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_guide.rb +0 -39
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_live_tv.rb +0 -104
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_main_menu.rb +0 -27
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_on_demand.rb +0 -35
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_product_page.rb +0 -7
- data/lib/User_Lib/screen/mobile/android/android_phone/android_phone_search.rb +0 -26
- data/lib/User_Lib/screen/mobile/android/android_privacy_legal.rb +0 -54
- data/lib/User_Lib/screen/mobile/android/android_product_page.rb +0 -484
- data/lib/User_Lib/screen/mobile/android/android_screen.rb +0 -56
- data/lib/User_Lib/screen/mobile/android/android_search.rb +0 -39
- data/lib/User_Lib/screen/mobile/android/android_settings.rb +0 -90
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_dvr.rb +0 -58
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_guide.rb +0 -24
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_live_tv.rb +0 -24
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_main_menu.rb +0 -19
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_on_demand.rb +0 -16
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_product_page.rb +0 -45
- data/lib/User_Lib/screen/mobile/android/android_tablet/android_tablet_search.rb +0 -14
- data/lib/User_Lib/screen/mobile/devices_mobile.rb +0 -53
- data/lib/User_Lib/screen/mobile/dvr_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/favorites_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/guide_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/ios/ios_devices.rb +0 -43
- data/lib/User_Lib/screen/mobile/ios/ios_dvr.rb +0 -231
- data/lib/User_Lib/screen/mobile/ios/ios_favorites.rb +0 -79
- data/lib/User_Lib/screen/mobile/ios/ios_guide.rb +0 -53
- data/lib/User_Lib/screen/mobile/ios/ios_live_tv.rb +0 -413
- data/lib/User_Lib/screen/mobile/ios/ios_login.rb +0 -76
- data/lib/User_Lib/screen/mobile/ios/ios_main_menu.rb +0 -38
- data/lib/User_Lib/screen/mobile/ios/ios_on_demand.rb +0 -371
- data/lib/User_Lib/screen/mobile/ios/ios_parental_controls.rb +0 -104
- data/lib/User_Lib/screen/mobile/ios/ios_phone/ios_phone_dvr.rb +0 -14
- data/lib/User_Lib/screen/mobile/ios/ios_phone/ios_phone_live_tv.rb +0 -36
- data/lib/User_Lib/screen/mobile/ios/ios_phone/ios_phone_main_menu.rb +0 -7
- data/lib/User_Lib/screen/mobile/ios/ios_phone/ios_phone_on_demand.rb +0 -7
- data/lib/User_Lib/screen/mobile/ios/ios_phone/ios_phone_search.rb +0 -13
- data/lib/User_Lib/screen/mobile/ios/ios_privacy_legal.rb +0 -56
- data/lib/User_Lib/screen/mobile/ios/ios_product_page.rb +0 -441
- data/lib/User_Lib/screen/mobile/ios/ios_screen.rb +0 -60
- data/lib/User_Lib/screen/mobile/ios/ios_search.rb +0 -145
- data/lib/User_Lib/screen/mobile/ios/ios_settings.rb +0 -34
- data/lib/User_Lib/screen/mobile/ios/ios_tablet/ios_tablet_live_tv.rb +0 -34
- data/lib/User_Lib/screen/mobile/ios/ios_tablet/ios_tablet_main_menu.rb +0 -7
- data/lib/User_Lib/screen/mobile/ios/ios_tablet/ios_tablet_on_demand.rb +0 -7
- data/lib/User_Lib/screen/mobile/ios/ios_tablet/ios_tablet_search.rb +0 -13
- data/lib/User_Lib/screen/mobile/live_tv_mobile.rb +0 -73
- data/lib/User_Lib/screen/mobile/login_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/main_menu_mobile.rb +0 -83
- data/lib/User_Lib/screen/mobile/mobile_screen.rb +0 -232
- data/lib/User_Lib/screen/mobile/on_demand_mobile.rb +0 -70
- data/lib/User_Lib/screen/mobile/parental_controls_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/privacy_legal_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/product_page_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/search_mobile.rb +0 -5
- data/lib/User_Lib/screen/mobile/settings_mobile.rb +0 -33
- data/lib/User_Lib/screen/passport/passport_dvr.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_guide.rb +0 -37
- data/lib/User_Lib/screen/passport/passport_library.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_live_tv.rb +0 -17
- data/lib/User_Lib/screen/passport/passport_main_menu.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_mini_guide.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_movies.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_on_demand.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_parental_controls.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_product_page.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_screen.rb +0 -23
- data/lib/User_Lib/screen/passport/passport_search.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_settings.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_tv_shows.rb +0 -25
- data/lib/User_Lib/screen/passport/passport_video_store.rb +0 -25
- data/lib/User_Lib/screen/roku/brs/roku_guide_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_home_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_live_tv_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_login_brs.rb +0 -103
- data/lib/User_Lib/screen/roku/brs/roku_main_menu_brs.rb +0 -46
- data/lib/User_Lib/screen/roku/brs/roku_on_demand_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_product_page_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_screen_brs.rb +0 -9
- data/lib/User_Lib/screen/roku/brs/roku_search_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_settings_brs.rb +0 -42
- data/lib/User_Lib/screen/roku/brs/roku_watch_later_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/brs/roku_welcome_brs.rb +0 -12
- data/lib/User_Lib/screen/roku/roku_dvr.rb +0 -7
- data/lib/User_Lib/screen/roku/roku_guide.rb +0 -590
- data/lib/User_Lib/screen/roku/roku_home.rb +0 -346
- data/lib/User_Lib/screen/roku/roku_library.rb +0 -26
- data/lib/User_Lib/screen/roku/roku_live_tv.rb +0 -210
- data/lib/User_Lib/screen/roku/roku_login.rb +0 -795
- data/lib/User_Lib/screen/roku/roku_main_menu.rb +0 -425
- data/lib/User_Lib/screen/roku/roku_mini_guide.rb +0 -7
- data/lib/User_Lib/screen/roku/roku_on_demand.rb +0 -479
- data/lib/User_Lib/screen/roku/roku_product_page.rb +0 -483
- data/lib/User_Lib/screen/roku/roku_screen.rb +0 -85
- data/lib/User_Lib/screen/roku/roku_search.rb +0 -229
- data/lib/User_Lib/screen/roku/roku_settings.rb +0 -304
- data/lib/User_Lib/screen/roku/roku_watch_later.rb +0 -51
- data/lib/User_Lib/screen/roku/roku_welcome.rb +0 -10
- data/lib/User_Lib/screen/roku_tv/roku_tv_dvr.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_guide.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_home.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_library.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_live_tv.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_login.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_main_menu.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_mini_guide.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_on_demand.rb +0 -26
- data/lib/User_Lib/screen/roku_tv/roku_tv_product_page.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_screen.rb +0 -7
- data/lib/User_Lib/screen/roku_tv/roku_tv_search.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_settings.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_watch_later.rb +0 -14
- data/lib/User_Lib/screen/roku_tv/roku_tv_welcome.rb +0 -14
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_dvr.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_guide.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_library.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_live_tv.rb +0 -21
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_login.rb +0 -13
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_main_menu.rb +0 -64
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_mini_guide.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_movies.rb +0 -140
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_on_demand.rb +0 -76
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_parental_controls.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_product_page.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_screen.rb +0 -74
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_search.rb +0 -29
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_settings.rb +0 -189
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_tv_shows.rb +0 -24
- data/lib/User_Lib/screen/samsung_tv/samsung_tv_video_store.rb +0 -24
- data/lib/User_Lib/screen/sara/sara_dvr.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_guide.rb +0 -43
- data/lib/User_Lib/screen/sara/sara_library.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_live_tv.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_log_in.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_main_menu.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_mini_guide.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_movies.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_on_demand.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_parental_controls.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_product_page.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_screen.rb +0 -24
- data/lib/User_Lib/screen/sara/sara_search.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_settings.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_tv_shows.rb +0 -26
- data/lib/User_Lib/screen/sara/sara_video_store.rb +0 -26
- data/lib/User_Lib/screen/stb/iguide/iguide_devices.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_dvr.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_favorites.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_guide.rb +0 -39
- data/lib/User_Lib/screen/stb/iguide/iguide_home.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_library.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_live_tv.rb +0 -59
- data/lib/User_Lib/screen/stb/iguide/iguide_login.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_main_menu.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_mini_guide.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_movies.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_on_demand.rb +0 -531
- data/lib/User_Lib/screen/stb/iguide/iguide_parental_controls.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_privacy_legal.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_product_page.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_quick_menu.rb +0 -7
- data/lib/User_Lib/screen/stb/iguide/iguide_screen.rb +0 -21
- data/lib/User_Lib/screen/stb/iguide/iguide_search.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_settings.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_tv_shows.rb +0 -10
- data/lib/User_Lib/screen/stb/iguide/iguide_video_store.rb +0 -10
- data/lib/User_Lib/screen/stb/login_stb.rb +0 -5
- data/lib/User_Lib/screen/stb/odn/odn_dvr.rb +0 -59
- data/lib/User_Lib/screen/stb/odn/odn_favorites.rb +0 -8
- data/lib/User_Lib/screen/stb/odn/odn_guide.rb +0 -177
- data/lib/User_Lib/screen/stb/odn/odn_live_tv.rb +0 -115
- data/lib/User_Lib/screen/stb/odn/odn_login.rb +0 -8
- data/lib/User_Lib/screen/stb/odn/odn_main_menu.rb +0 -175
- data/lib/User_Lib/screen/stb/odn/odn_on_demand.rb +0 -1170
- data/lib/User_Lib/screen/stb/odn/odn_on_demand_kids.rb +0 -23
- data/lib/User_Lib/screen/stb/odn/odn_on_demand_left_menu.rb +0 -180
- data/lib/User_Lib/screen/stb/odn/odn_parental_controls.rb +0 -9
- data/lib/User_Lib/screen/stb/odn/odn_product_page.rb +0 -8
- data/lib/User_Lib/screen/stb/odn/odn_screen.rb +0 -111
- data/lib/User_Lib/screen/stb/odn/odn_search.rb +0 -167
- data/lib/User_Lib/screen/stb/odn/odn_settings.rb +0 -142
- data/lib/User_Lib/screen/stb/spectrum/spectrum_diagnostics.rb +0 -27
- data/lib/User_Lib/screen/stb/spectrum/spectrum_docsis/screen_spectrum_docsis.rb +0 -12
- data/lib/User_Lib/screen/stb/spectrum/spectrum_docsis/spectrum_1080_docsis_guide.rb +0 -10
- data/lib/User_Lib/screen/stb/spectrum/spectrum_docsis/spectrum_1080_docsis_main_menu.rb +0 -10
- data/lib/User_Lib/screen/stb/spectrum/spectrum_docsis/spectrum_1080_docsis_settings.rb +0 -10
- data/lib/User_Lib/screen/stb/spectrum/spectrum_dvr.rb +0 -1781
- data/lib/User_Lib/screen/stb/spectrum/spectrum_guide.rb +0 -841
- data/lib/User_Lib/screen/stb/spectrum/spectrum_library.rb +0 -384
- data/lib/User_Lib/screen/stb/spectrum/spectrum_live_tv.rb +0 -259
- data/lib/User_Lib/screen/stb/spectrum/spectrum_main_menu.rb +0 -223
- data/lib/User_Lib/screen/stb/spectrum/spectrum_mini_guide.rb +0 -404
- data/lib/User_Lib/screen/stb/spectrum/spectrum_movies.rb +0 -420
- data/lib/User_Lib/screen/stb/spectrum/spectrum_netflix.rb +0 -37
- data/lib/User_Lib/screen/stb/spectrum/spectrum_on_demand.rb +0 -2137
- data/lib/User_Lib/screen/stb/spectrum/spectrum_parental_controls.rb +0 -528
- data/lib/User_Lib/screen/stb/spectrum/spectrum_pay_per_view.rb +0 -26
- data/lib/User_Lib/screen/stb/spectrum/spectrum_product_page.rb +0 -58
- data/lib/User_Lib/screen/stb/spectrum/spectrum_screen.rb +0 -48
- data/lib/User_Lib/screen/stb/spectrum/spectrum_search.rb +0 -92
- data/lib/User_Lib/screen/stb/spectrum/spectrum_settings.rb +0 -1657
- data/lib/User_Lib/screen/stb/spectrum/spectrum_tv_shows.rb +0 -1532
- data/lib/User_Lib/screen/stb/spectrum/spectrum_video_store.rb +0 -1598
- data/lib/User_Lib/screen/stb/stb_screen.rb +0 -7
- data/lib/User_Lib/screen/tivo/tivo_dvr.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_guide.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_library.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_live_tv.rb +0 -17
- data/lib/User_Lib/screen/tivo/tivo_login.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_main_menu.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_mini_guide.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_movies.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_on_demand.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_parental_controls.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_product_page.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_screen.rb +0 -20
- data/lib/User_Lib/screen/tivo/tivo_search.rb +0 -31
- data/lib/User_Lib/screen/tivo/tivo_settings.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_tv_shows.rb +0 -25
- data/lib/User_Lib/screen/tivo/tivo_video_store.rb +0 -25
- data/lib/diagnostics/conductor/conductor_checkup.tmc +0 -24
- data/lib/diagnostics/db/mad_db_check.tmc +0 -56
- data/lib/diagnostics/db/mas_db_checkup.tmc +0 -24
- data/lib/diagnostics/db/mas_db_checkup_gem.tmc +0 -20
- data/lib/diagnostics/db/mas_db_checkup_jar.tmc +0 -50
- data/lib/diagnostics/iguide/iguide_nvram_reset.tmc +0 -23
- data/lib/diagnostics/iguide/iguide_prepare_stb.tmc +0 -33
- data/lib/diagnostics/iguide/iguide_prepare_stb_and_health_check.tmc +0 -63
- data/lib/diagnostics/iguide/iguide_stb_health_check.tmc +0 -54
- data/lib/diagnostics/prepare_stb.tmc +0 -30
- data/lib/diagnostics/prepare_stb_and_health_check.tmc +0 -56
- data/lib/diagnostics/script_options/options_checkup.tmc +0 -145
- data/lib/diagnostics/server_components_check.tmc +0 -62
- data/lib/diagnostics/ssh/dncs_checkup.tmc +0 -24
- data/lib/diagnostics/ssh/mas_checkup.tmc +0 -24
- data/lib/diagnostics/stb_health_check.tmc +0 -46
- data/lib/diagnostics/stb_ip_check.tmc +0 -120
- data/lib/diagnostics/webservices/mas_rest_services_checkup.tmc +0 -24
- data/lib/diagnostics/webservices/mas_soap_services_checkup.tmc +0 -24
- data/lib/end_iteration.rb +0 -4
- data/lib/lib/test_wrapper.rb +0 -146
- data/lib/run_test.rb +0 -4
- data/lib/script_validator.rb +0 -48
@@ -1,104 +0,0 @@
|
|
1
|
-
require './lib/screen/mobile/ios/ios_screen'
|
2
|
-
require './lib/screen/mobile/parental_controls_mobile'
|
3
|
-
|
4
|
-
# Defines iOS-specific methods on the Parental Controls screen
|
5
|
-
|
6
|
-
class IosParentalControls < IosScreen
|
7
|
-
include ParentalControlsMobile
|
8
|
-
|
9
|
-
# Chooses the named parental control
|
10
|
-
def choose_control?(name)
|
11
|
-
dut.tap?({:name => name})
|
12
|
-
end
|
13
|
-
|
14
|
-
# Returns true if the prompt to create a PIN is displayed, otherwise false
|
15
|
-
def is_create_pin_prompt?
|
16
|
-
raise 'iOS does not prompt for PIN per: http://jira.corp.mystrotv.com/browse/NGC-2362'
|
17
|
-
end
|
18
|
-
|
19
|
-
# Returns true if the prompt to confirm a new PIN is displayed, otherwise false
|
20
|
-
def is_confirm_pin_prompt?
|
21
|
-
raise 'iOS does not prompt for PIN per: http://jira.corp.mystrotv.com/browse/NGC-2362'
|
22
|
-
end
|
23
|
-
|
24
|
-
# Returns true if the Channel Blocking page is displayed, otherwise false
|
25
|
-
def is_channel_block_visible?
|
26
|
-
dut.element?({:name => 'Turning Channel Block on will allow you to block any network selected below'})
|
27
|
-
end
|
28
|
-
|
29
|
-
# Returns true if parental controls was successfully enabled, otherwise false
|
30
|
-
def enable?
|
31
|
-
dut.tap?({:name => 'To adjust the parental controls settings please turn them on and edit the settings using the tools below',
|
32
|
-
:text => '0', :timeout => 5.sec})
|
33
|
-
end
|
34
|
-
|
35
|
-
# Returns true if parental controls is currently enabled, otherwise false
|
36
|
-
def enabled?
|
37
|
-
dut.element?({:name => 'To adjust the parental controls settings please turn them on and edit the settings using '\
|
38
|
-
'the tools below',
|
39
|
-
:text => '1', :timeout => 5.sec})
|
40
|
-
end
|
41
|
-
|
42
|
-
# Returns true if successfully chose to reset PIN, otherwise false
|
43
|
-
def choose_reset_pin?
|
44
|
-
dut.tap?({:name => 'Reset Pin'})
|
45
|
-
end
|
46
|
-
|
47
|
-
# Returns true if the password prompt is displayed, otherwise false
|
48
|
-
def is_password_prompt?
|
49
|
-
dut.element(:name => 'Enter Master Account Password') != nil
|
50
|
-
end
|
51
|
-
|
52
|
-
# Returns true if successfully typed password, otherwise false
|
53
|
-
def enter_password?(password=nil)
|
54
|
-
return false unless dut.tap?({:type => 'UIASecureTextField'})
|
55
|
-
dut.type?({:keys => password || $password || dut.password})
|
56
|
-
end
|
57
|
-
|
58
|
-
# Returns true if successfully continued to reset PIN, otherwise false
|
59
|
-
def continue_reset_pin?
|
60
|
-
dut.tap?({:name => 'Validate'})
|
61
|
-
end
|
62
|
-
|
63
|
-
# Returns true if the password was invalid, otherwise false
|
64
|
-
def is_password_invalid?
|
65
|
-
dut.element?({:name => 'INVALID PASSWORD', :is_visible => true, :is_on_screen => true})
|
66
|
-
end
|
67
|
-
|
68
|
-
# Returns true if successfully selected option to cancel PIN reset, otherwise false
|
69
|
-
def cancel_reset_pin?
|
70
|
-
dut.tap?({:name => 'Cancel'})
|
71
|
-
end
|
72
|
-
|
73
|
-
# Returns the channel titles, optionally including only un/blocked channels
|
74
|
-
def get_channel_titles(args = {:blocked => nil})
|
75
|
-
channel_titles = dut.elements({:type => 'UIATableCell', :info => [:name]})
|
76
|
-
unless args[:blocked].nil?
|
77
|
-
vod_locks = dut.elements({:name => 'VOD Lock', :info => [:x, :y, :width, :height]})
|
78
|
-
blocked = dut.screens.parental_controls.roi.image.blocked
|
79
|
-
i = 0
|
80
|
-
channel_titles.select! do
|
81
|
-
vod_lock = vod_locks[i]
|
82
|
-
blocked.x = vod_lock[:x]
|
83
|
-
blocked.y = vod_lock[:y]
|
84
|
-
blocked.width = vod_lock[:width]
|
85
|
-
blocked.height = vod_lock[:height]
|
86
|
-
i += 1
|
87
|
-
args[:blocked].eql?(blocked.displayed?(:timeout => 30.sec))
|
88
|
-
end
|
89
|
-
end
|
90
|
-
channel_titles
|
91
|
-
end
|
92
|
-
|
93
|
-
# Returns true if successfully blocked the given channel, otherwise false
|
94
|
-
def block_channel?(channel_title)
|
95
|
-
index = dut.elements({:type => 'UIATableCell', :info => [:name]}).index(channel_title)
|
96
|
-
dut.tap?({:name => 'VOD Lock', :index => index})
|
97
|
-
end
|
98
|
-
|
99
|
-
# Returns true if successfully navigated to main menu, otherwise false
|
100
|
-
def navigate_to_main_menu?
|
101
|
-
#nada
|
102
|
-
end
|
103
|
-
|
104
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require './lib/screen/mobile/ios/ios_dvr'
|
2
|
-
|
3
|
-
# Defines iOS Phone-specific methods on the Live TV screen
|
4
|
-
|
5
|
-
class IosPhoneDvr < IosDvr
|
6
|
-
|
7
|
-
# Public: Swipes down, refreshing the recording list in DVR Manager
|
8
|
-
#
|
9
|
-
# Returns true if swiped correctly
|
10
|
-
def refresh_recording_list?
|
11
|
-
dut.swipe?({:from => {:x => 321, :y => 200, :coordinates => true}, :to => {:x => 321, :y => 400, :coordinates => true}, :duration => 500})
|
12
|
-
end
|
13
|
-
|
14
|
-
end
|
@@ -1,36 +0,0 @@
|
|
1
|
-
require './lib/screen/mobile/ios/ios_live_tv'
|
2
|
-
|
3
|
-
# Defines iOS Phone-specific methods on the Live TV screen
|
4
|
-
|
5
|
-
class IosPhoneLiveTv < IosLiveTv
|
6
|
-
|
7
|
-
# Gets the element for the currently-playing channel, which is the second non-blank UIAStaticText element.
|
8
|
-
def get_playing_now
|
9
|
-
ret = until_not_nil(:timeout => 3.min) do
|
10
|
-
get_cached_elements(:refresh => true).select do |e|
|
11
|
-
e[:type].eql?('UIAStaticText') && e[:is_on_screen] && !e[:text].empty?
|
12
|
-
end[1]
|
13
|
-
end[:text]
|
14
|
-
logger.info("Playing now: #{ret}")
|
15
|
-
ret
|
16
|
-
end
|
17
|
-
|
18
|
-
# Returns true if successfully applied a filter to speed things up
|
19
|
-
def apply_filter?
|
20
|
-
#TODO: don't use coordinates!
|
21
|
-
logger.info('*** WARNING *** Using coordinates to apply a filter')
|
22
|
-
# Filter by "Latino"
|
23
|
-
return false unless dut.tap?({:x => 203, :y => 537, :coordinates => true})
|
24
|
-
(1..3).each do
|
25
|
-
return false unless dut.scroll?({:from => {:x => 310, :y => 997, :coordinates => true},
|
26
|
-
:to => {:x => 300, :y => 620, :coordinates => true}, :duration => 500.ms})
|
27
|
-
end
|
28
|
-
dut.tap?({:x => 157, :y => 880, :coordinates => true})
|
29
|
-
end
|
30
|
-
|
31
|
-
def cancel_fullscreen?
|
32
|
-
super
|
33
|
-
dut.rotate_portrait?
|
34
|
-
end
|
35
|
-
|
36
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
require './lib/screen/mobile/ios/ios_search'
|
2
|
-
|
3
|
-
# Defines iOS Phone-specific methods on the Search screen
|
4
|
-
|
5
|
-
class IosPhoneSearch < IosSearch
|
6
|
-
|
7
|
-
# Returns true if successfully tapped the Search (ENTER) button, otherwise false
|
8
|
-
def search?
|
9
|
-
logger.info('Searching')
|
10
|
-
dut.tap?({:name => 'Search'})
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
@@ -1,56 +0,0 @@
|
|
1
|
-
require './lib/screen/mobile/ios/ios_screen'
|
2
|
-
require './lib/screen/mobile/privacy_legal_mobile'
|
3
|
-
|
4
|
-
# Defines iOS-specific methods on the Privacy/Legal screen
|
5
|
-
|
6
|
-
class IosPrivacyLegal < IosScreen
|
7
|
-
include PrivacyLegalMobile
|
8
|
-
|
9
|
-
# Returns true if Privacy Policy and Terms and Conditions are displayed, otherwise false
|
10
|
-
def displayed?
|
11
|
-
dut.element?({:name => 'Privacy Policy'}) && dut.element?({:name => 'Terms and Conditions'})
|
12
|
-
end
|
13
|
-
|
14
|
-
# Returns true if the named option was selected, otherwise false
|
15
|
-
def select?(option)
|
16
|
-
dut.tap?({:name => option})
|
17
|
-
end
|
18
|
-
|
19
|
-
# Fails the test unless Terms and Conditions successfully verified
|
20
|
-
def verify_terms_and_conditions
|
21
|
-
# On iOS we also need to validate canceling the browser
|
22
|
-
tcfail 'Failed to cancel opening browser!' unless dut.screens.privacy_legal.cancel_browser?
|
23
|
-
tcfail 'Failed to select Terms and Conditions!' unless dut.screens.privacy_legal.select?('Terms and Conditions')
|
24
|
-
tcfail 'Failed to confirm opening browser!' unless dut.screens.privacy_legal.confirm_browser?
|
25
|
-
tcfail 'Failed to display Terms and Conditions!' unless is_terms_and_conditions?
|
26
|
-
end
|
27
|
-
|
28
|
-
# Returns true if Terms and Conditions is displayed, otherwise false
|
29
|
-
def is_terms_and_conditions?
|
30
|
-
dut.element?({:name => 'regexp:for Apple iOS - Terms and Conditions', :timeout => 60.sec})
|
31
|
-
end
|
32
|
-
|
33
|
-
# Returns true if able to exit Terms and Conditions, otherwise false
|
34
|
-
def quit_terms_and_conditions?
|
35
|
-
#TODO: we should be able to do this: dut.tap?({:name => 'regexp:^Back to \w+'})
|
36
|
-
#TODO: but for some reason, maybe related to Appium version, sending coordinates to the default context when a
|
37
|
-
#TODO: web context is present causes Appium to freeze, so for now we just re-init and navigate back to settings
|
38
|
-
dut.init? && dut.screens.login.login? && dut.screens.main_menu.navigate_to_settings?
|
39
|
-
end
|
40
|
-
|
41
|
-
# Returns true if able to cancel opening browser, otherwise false
|
42
|
-
def cancel_browser?
|
43
|
-
raise 'No option to cancel opening browser!'
|
44
|
-
end
|
45
|
-
|
46
|
-
# Returns true if able to confirm opening browser, otherwise false
|
47
|
-
def confirm_browser?
|
48
|
-
dut.tap?({:description => 'OK'}) # click OK to launch Safari
|
49
|
-
end
|
50
|
-
|
51
|
-
# Returns true if Privacy Policy is displayed, otherwise false
|
52
|
-
def is_privacy_policy?
|
53
|
-
dut.element?({:name => 'TWC PRIVACY NOTICES', :timeout => 60.sec})
|
54
|
-
end
|
55
|
-
|
56
|
-
end
|
@@ -1,441 +0,0 @@
|
|
1
|
-
require './lib/screen/mobile/ios/ios_screen'
|
2
|
-
require './lib/screen/mobile/product_page_mobile'
|
3
|
-
|
4
|
-
# Defines iOS-specific methods on the Product Page screen
|
5
|
-
|
6
|
-
class IosProductPage < IosScreen
|
7
|
-
include ProductPageMobile
|
8
|
-
|
9
|
-
# Returns true if the Product Page title matches the given title, otherwise false
|
10
|
-
def title?(check_title)
|
11
|
-
logger.info("Checking if title equals #{check_title.inspect}")
|
12
|
-
title == check_title
|
13
|
-
end
|
14
|
-
|
15
|
-
# Returns the title of the Product Page
|
16
|
-
def title
|
17
|
-
logger.info('Getting product page title')
|
18
|
-
title = dut.element({:type => 'UIANavigationBar', :info => [:name]})
|
19
|
-
logger.info("Got title: #{title}")
|
20
|
-
title
|
21
|
-
end
|
22
|
-
|
23
|
-
# Returns true if successfully selected option to go back, otherwise false
|
24
|
-
def back?
|
25
|
-
logger.info('Navigating back from product page')
|
26
|
-
dut.tap?({:name => 'Back', :index => 1})
|
27
|
-
end
|
28
|
-
|
29
|
-
# Returns true if play option found, otherwise false
|
30
|
-
def playable?
|
31
|
-
logger.info('Checking if product is playable')
|
32
|
-
dut.element?({:type => 'UIACollectionCell', :name => 'regexp:^(On Demand|Resume)$', :index => 1})
|
33
|
-
end
|
34
|
-
|
35
|
-
# Returns true if successfully started to play asset, otherwise false
|
36
|
-
def play?
|
37
|
-
logger.info('Starting playback')
|
38
|
-
if dut.tap?({:type => 'UIACollectionCell', :name => 'regexp:^(On Demand|Resume)$', :is_on_screen => true,
|
39
|
-
:is_visible => true, :index => 1})
|
40
|
-
if is_pin_prompt?
|
41
|
-
tcfail 'Failed to enter PIN!' unless enter_pin?
|
42
|
-
end
|
43
|
-
true
|
44
|
-
else
|
45
|
-
false
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
# Returns true if product page, with optional title verification, is displayed, otherwise false
|
50
|
-
def displayed?(asset_title=nil)
|
51
|
-
logger.info('Checking if product page is displayed')
|
52
|
-
return false unless dut.element?({:type => 'UIASegmentedControl', :timeout => 2.min})
|
53
|
-
unless asset_title.nil?
|
54
|
-
check_title = title
|
55
|
-
logger.info("Checking if asset title #{asset_title.inspect} includes #{check_title.inspect}")
|
56
|
-
return false unless asset_title.include?(check_title)
|
57
|
-
end
|
58
|
-
true
|
59
|
-
end
|
60
|
-
|
61
|
-
# Returns the element for the network logo
|
62
|
-
def network_logo
|
63
|
-
logger.info('Getting network logo element')
|
64
|
-
# TODO: we need a better way to identify the network logo image!
|
65
|
-
dut.element({:type => 'UIAImage', :index => 3})
|
66
|
-
end
|
67
|
-
|
68
|
-
# Returns the description of the asset
|
69
|
-
def description
|
70
|
-
logger.info('Getting asset description')
|
71
|
-
# TODO: we need a better way to identify the description!
|
72
|
-
desc = dut.element({:type => 'UIATableCell', :index => 2, :info => [:name]})
|
73
|
-
logger.info("Got description: #{desc}")
|
74
|
-
desc
|
75
|
-
end
|
76
|
-
|
77
|
-
# Returns the asset rating
|
78
|
-
def rating
|
79
|
-
logger.info('Getting asset rating')
|
80
|
-
# OCR it from the description box
|
81
|
-
# TODO: we need a better way to identify the description!
|
82
|
-
cell = dut.element({:type => 'UIATableCell', :index => 2})
|
83
|
-
desc = dut.elements({:type => 'UIAStaticText', :name => 'regexp:.+'}).select { |e| cell.contains?(e) }.first
|
84
|
-
desc_ocr = dut.roi.text.new(:element => desc, :preprocessing => 9).retrieve
|
85
|
-
rating = desc_ocr.match(/^\s*([^\s]+)/).captures.first
|
86
|
-
logger.info("Got rating: #{rating}")
|
87
|
-
rating
|
88
|
-
end
|
89
|
-
|
90
|
-
# Returns the asset release year
|
91
|
-
def year
|
92
|
-
logger.info('Getting asset release year')
|
93
|
-
# This is the name of the UIAStaticText field within the description area
|
94
|
-
desc = dut.element({:type => 'UIATableCell', :index => 2})
|
95
|
-
year = dut.elements({:type => 'UIAStaticText', :name => 'regexp:^\s*\d{4}'}).select do |e|
|
96
|
-
desc.contains?(e)
|
97
|
-
end.first[:name]
|
98
|
-
logger.info("Got year: #{year}")
|
99
|
-
year
|
100
|
-
end
|
101
|
-
|
102
|
-
# Returns a list of available buttons
|
103
|
-
def buttons
|
104
|
-
logger.info('Getting buttons')
|
105
|
-
# TODO: we need a better way to identify the buttons!
|
106
|
-
# Return all collection cells with the same dimensions as the first one (which is the first button)
|
107
|
-
cells = dut.elements({:type => 'UIACollectionCell'})
|
108
|
-
buttons = cells.select { |c| c[:width] == cells.first[:width] && c[:height] == cells.first[:height] }
|
109
|
-
buttons = buttons.map { |b| b[:name] }
|
110
|
-
logger.info("Got buttons: #{buttons.inspect}")
|
111
|
-
buttons
|
112
|
-
end
|
113
|
-
|
114
|
-
# Returns the list of visible cast and crew
|
115
|
-
def cast_and_crew
|
116
|
-
logger.info('Getting cast and crew')
|
117
|
-
# TODO: we need a better way to identify the cast/crew!
|
118
|
-
# Return even static texts inside the 2nd collection view
|
119
|
-
cast_crew = []
|
120
|
-
coll = dut.element({:type => 'UIACollectionView', :index => 2})
|
121
|
-
dut.elements({:type => 'UIAStaticText'}).select { |e| coll.contains?(e) }.each_with_index do |t, i|
|
122
|
-
cast_crew.push(t) if i.even?
|
123
|
-
end
|
124
|
-
cast_crew = cast_crew.map { |b| b[:name] }
|
125
|
-
logger.info("Got cast and crew: #{cast_crew.inspect}")
|
126
|
-
cast_crew
|
127
|
-
end
|
128
|
-
|
129
|
-
# Returns the director's name
|
130
|
-
def director
|
131
|
-
detail('Director')
|
132
|
-
end
|
133
|
-
|
134
|
-
# Returns the runtime
|
135
|
-
def runtime
|
136
|
-
rt_ms = 0
|
137
|
-
rt = detail('Runtime')
|
138
|
-
hr = rt.match(/(\d+)\s*hr/)
|
139
|
-
if hr
|
140
|
-
rt_ms += hr.captures.first.to_i.hr
|
141
|
-
end
|
142
|
-
min = rt.match(/(\d+)\s*min/)
|
143
|
-
if min
|
144
|
-
rt_ms += min.captures.first.to_i.min
|
145
|
-
end
|
146
|
-
rt_ms > 0 ? rt_ms : nil
|
147
|
-
end
|
148
|
-
|
149
|
-
# Returns the list of genres
|
150
|
-
def genres
|
151
|
-
detail('Genres').split(/,\s*/)
|
152
|
-
end
|
153
|
-
|
154
|
-
# Returns the list of details related to format
|
155
|
-
def formats
|
156
|
-
details.reject { |d| d.eql?('CC') }
|
157
|
-
end
|
158
|
-
|
159
|
-
# Returns true if closed captioning is available, otherwise false
|
160
|
-
def cc?
|
161
|
-
details.include?('CC')
|
162
|
-
end
|
163
|
-
|
164
|
-
# Returns the list of details
|
165
|
-
def details
|
166
|
-
detail('Details').split(/,\s*/)
|
167
|
-
end
|
168
|
-
|
169
|
-
# Returns the expiration date
|
170
|
-
def available_until
|
171
|
-
detail('Available Until')
|
172
|
-
end
|
173
|
-
|
174
|
-
# Returns the value of the given asset detail, i.e. "Director", "Genres", etc.
|
175
|
-
def detail(name)
|
176
|
-
logger.info("Getting detail: #{name}")
|
177
|
-
# Return the last static text inside the detail's collection cell
|
178
|
-
viewport = scroll_area
|
179
|
-
cell = until_not_nil(:timeout => 10.min) do
|
180
|
-
elem = dut.element({:name => name, :type => 'UIACollectionCell', :timeout => 10.sec})
|
181
|
-
# Scroll until we find the detail
|
182
|
-
if elem.nil?
|
183
|
-
tcfail 'Failed to scroll!' unless dut.screens.product_page.scroll_down?(1, :area => viewport, :length => :short)
|
184
|
-
end
|
185
|
-
elem
|
186
|
-
end
|
187
|
-
if cell.nil?
|
188
|
-
value = nil
|
189
|
-
else
|
190
|
-
value = dut.elements({:type => 'UIAStaticText'}).select { |e| cell.contains?(e) }.last
|
191
|
-
value = value[:name]
|
192
|
-
end
|
193
|
-
logger.info("Got #{name}: #{value}")
|
194
|
-
value
|
195
|
-
end
|
196
|
-
|
197
|
-
# Returns the scroll area
|
198
|
-
def scroll_area
|
199
|
-
logger.info('Getting product page scroll area')
|
200
|
-
area = dut.element({:type => 'UIATableView'})
|
201
|
-
logger.info("Got area: #{[area[:x], area[:y], area[:width], area[:height]].inspect}")
|
202
|
-
area
|
203
|
-
end
|
204
|
-
|
205
|
-
# Returns the Common Sense rating
|
206
|
-
def common_sense_rating
|
207
|
-
logger.info('Getting Common Sense rating')
|
208
|
-
csr = nil
|
209
|
-
#TODO: we need a better way to identify the common sense rating!
|
210
|
-
viewport = scroll_area
|
211
|
-
# This will be the 5th or 6th table cell
|
212
|
-
[5, 6].each do |index|
|
213
|
-
cell = nil
|
214
|
-
until_equals(true, :timeout => 10.min) do
|
215
|
-
elem = dut.element({:type => 'UIATableCell', :index => index, :timeout => 10.sec})
|
216
|
-
next if elem[:height] > (viewport[:height] * 0.5) # next if element height is greater than half the viewport height
|
217
|
-
in_view = viewport.contains?(elem)
|
218
|
-
# Scroll until the cell is in view
|
219
|
-
if in_view
|
220
|
-
cell = elem
|
221
|
-
else
|
222
|
-
tcfail 'Failed to scroll!' unless dut.screens.product_page.scroll_down?(1, :area => viewport,
|
223
|
-
:length => :short)
|
224
|
-
end
|
225
|
-
in_view
|
226
|
-
end
|
227
|
-
# OCR the text
|
228
|
-
text = dut.roi.text.new(:element => cell, :preprocessing => 8).retrieve
|
229
|
-
if text.include?('sense')
|
230
|
-
csr = text.match(/(age \d+\+?)/).captures.first
|
231
|
-
break
|
232
|
-
end
|
233
|
-
end
|
234
|
-
return nil if csr.nil?
|
235
|
-
logger.info("Got Common Sense rating: #{csr.inspect}")
|
236
|
-
csr
|
237
|
-
end
|
238
|
-
|
239
|
-
# Returns the Metacritic rating
|
240
|
-
def metacritic_rating
|
241
|
-
logger.info('Getting Metacritic rating')
|
242
|
-
mcr = nil
|
243
|
-
#TODO: we need a better way to identify the Metacritic rating!
|
244
|
-
viewport = scroll_area
|
245
|
-
# This will be the 5th table cell
|
246
|
-
cell = nil
|
247
|
-
until_equals(true, :timeout => 10.min) do
|
248
|
-
elem = dut.element({:type => 'UIATableCell', :index => 5, :timeout => 10.sec})
|
249
|
-
return nil if elem[:height] > (viewport[:height] * 0.5) # return if element height is greater than half the viewport height
|
250
|
-
in_view = viewport.contains?(elem)
|
251
|
-
# Scroll until the cell is in view
|
252
|
-
if in_view
|
253
|
-
cell = elem
|
254
|
-
else
|
255
|
-
tcfail 'Failed to scroll!' unless dut.screens.product_page.scroll_down?(1, :area => viewport, :length => :short)
|
256
|
-
end
|
257
|
-
in_view
|
258
|
-
end
|
259
|
-
# OCR the text
|
260
|
-
text = dut.roi.text.new(:element => cell, :preprocessing => 19).retrieve
|
261
|
-
if text.include?('metacritic')
|
262
|
-
mcr = text.scan(/\d+/).first.to_i
|
263
|
-
end
|
264
|
-
return nil if mcr.nil?
|
265
|
-
logger.info("Got Metacritic rating: #{mcr.inspect}")
|
266
|
-
mcr
|
267
|
-
end
|
268
|
-
|
269
|
-
# Returns true if related titles are shown, otherwise false
|
270
|
-
def related_to?
|
271
|
-
logger.info('Checking if related titles are shown')
|
272
|
-
dut.elements?({:name => 'Title'}) && dut.element?({:name => 'regexp:Related to', :type => 'UIATableCell'})
|
273
|
-
end
|
274
|
-
|
275
|
-
# Returns true if other ways to watch are shown, otherwise false
|
276
|
-
def ways_to_watch?
|
277
|
-
logger.info('Checking if other ways to watch are shown')
|
278
|
-
dut.elements?({:name => 'Airing'}) && dut.element?({:name => 'regexp:Other Ways To Watch', :type => 'UIATableCell'})
|
279
|
-
end
|
280
|
-
|
281
|
-
# Returns true if Episodes button is present, otherwise false
|
282
|
-
def episodes_button?
|
283
|
-
logger.info('Checking for Episodes button')
|
284
|
-
dut.element?({:name => 'Episodes', :type => 'UIAButton', :timeout => 1.min})
|
285
|
-
end
|
286
|
-
|
287
|
-
# Returns true if Info button is present, otherwise false
|
288
|
-
def info_button?
|
289
|
-
logger.info('Checking for Info button')
|
290
|
-
dut.element?({:name => 'Info', :type => 'UIAButton', :timeout => 1.min})
|
291
|
-
end
|
292
|
-
|
293
|
-
# Returns true if the Episodes is selected, otherwise false
|
294
|
-
def episodes_selected?
|
295
|
-
logger.info('Checking if Episodes is selected')
|
296
|
-
# Scroll up until the Episodes button is visible
|
297
|
-
button = nil
|
298
|
-
viewport = scroll_area
|
299
|
-
until_equals(true, :timeout => 5.min) do
|
300
|
-
button = dut.element({:name => 'Episodes', :type => 'UIAButton'})
|
301
|
-
if button[:is_visible] && button[:is_on_screen]
|
302
|
-
true
|
303
|
-
else
|
304
|
-
dut.screens.product_page.scroll_up?(1, :area => viewport, :speed => :fast)
|
305
|
-
false
|
306
|
-
end
|
307
|
-
end
|
308
|
-
highlight = dut.roi.image.highlight
|
309
|
-
highlight.rectangle = button
|
310
|
-
highlight.displayed?
|
311
|
-
end
|
312
|
-
|
313
|
-
# Returns the names of the visible episodes
|
314
|
-
def episode_titles
|
315
|
-
logger.info('Getting visible episode titles')
|
316
|
-
# TODO: need a better way to identify the titles!
|
317
|
-
# Titles are the 2nd StaticText in each TableCell that is numbered
|
318
|
-
elems = dut.elements
|
319
|
-
cells = elems.select { |e| e[:type] == 'UIATableCell' && e[:name].length > 0 }
|
320
|
-
titles = []
|
321
|
-
cells.each do |c|
|
322
|
-
texts = elems.select { |e| e[:type] == 'UIAStaticText' && c.contains?(e) }
|
323
|
-
titles << texts[1]
|
324
|
-
end
|
325
|
-
titles.map! { |e| e[:name] }
|
326
|
-
logger.info("Got visible episode titles: #{titles.inspect}")
|
327
|
-
titles
|
328
|
-
end
|
329
|
-
|
330
|
-
# Returns the airing types of the visible episodes
|
331
|
-
def episode_airing_types
|
332
|
-
logger.info('Getting visible episode airing types')
|
333
|
-
# TODO: need a better way to identify the airing types!
|
334
|
-
# Airing types are the 3rd StaticText in each TableCell that is numbered
|
335
|
-
elems = dut.elements
|
336
|
-
cells = elems.select { |e| e[:type] == 'UIATableCell' && e[:name].length > 0 }
|
337
|
-
airtypes = []
|
338
|
-
cells.each do |c|
|
339
|
-
texts = elems.select { |e| e[:type] == 'UIAStaticText' && c.contains?(e) }
|
340
|
-
airtypes << texts[2]
|
341
|
-
end
|
342
|
-
airtypes.map! { |e| e.nil? ? 'IN PROGRESS' : e[:name].split(/\s+[^\s]+\s+\d+/).first }
|
343
|
-
logger.info("Got visible episode airing types: #{airtypes.inspect}")
|
344
|
-
airtypes
|
345
|
-
end
|
346
|
-
|
347
|
-
# Returns the airing dates of the visible episodes
|
348
|
-
def episode_airing_dates
|
349
|
-
logger.info('Getting visible episode airing dates')
|
350
|
-
# TODO: need a better way to identify the airing dates!
|
351
|
-
# Airing dates are the 3rd StaticText in each TableCell that is numbered
|
352
|
-
elems = dut.elements
|
353
|
-
cells = elems.select { |e| e[:type] == 'UIATableCell' && e[:name].length > 0 }
|
354
|
-
airdates = []
|
355
|
-
cells.each do |c|
|
356
|
-
texts = elems.select { |e| e[:type] == 'UIAStaticText' && c.contains?(e) }
|
357
|
-
airdates << texts[2]
|
358
|
-
end
|
359
|
-
airdates.map! { |e| e.nil? ? nil : e[:name].match(/[^\s]+\s+\d+.+$/).to_s }
|
360
|
-
airdates.select! { |e| !e.nil? && !e.empty? }
|
361
|
-
logger.info("Got visible episode airing dates: #{airdates.inspect}")
|
362
|
-
airdates
|
363
|
-
end
|
364
|
-
|
365
|
-
# Returns the numbers of the visible episodes
|
366
|
-
def episode_numbers
|
367
|
-
logger.info('Getting visible episode numbers')
|
368
|
-
# Episode numbers are the names of the numbered TableCells
|
369
|
-
elems = dut.elements
|
370
|
-
cells = elems.select { |e| e[:type] == 'UIATableCell' && e[:name] =~ /\d+\./ }
|
371
|
-
nums = cells.map { |e| e[:name].delete('.').to_i }
|
372
|
-
logger.info("Got visible episode numbers: #{nums.inspect}")
|
373
|
-
nums
|
374
|
-
end
|
375
|
-
|
376
|
-
# Returns the names of the visible seasons
|
377
|
-
def seasons
|
378
|
-
logger.info('Getting visible seasons')
|
379
|
-
elems = dut.elements({:type => 'UIATableGroup', :is_on_screen => true})
|
380
|
-
# Throw away any that are bigger than the min height
|
381
|
-
min_height = elems.map { |e| e[:height] }.min
|
382
|
-
seasons = elems.reject { |e| e[:height] > min_height }.map do |e|
|
383
|
-
dut.roi.text.new(:element => e, :preprocessing => 6).retrieve
|
384
|
-
end
|
385
|
-
logger.info("Got visible seasons: #{seasons.inspect}")
|
386
|
-
seasons
|
387
|
-
end
|
388
|
-
|
389
|
-
# Returns the visible episode description, or nil if there isn't one
|
390
|
-
def episode_description
|
391
|
-
logger.info('Getting visible episode description')
|
392
|
-
# TODO: need a better way to identify episode description
|
393
|
-
# If the CollectionView containing the buttons is visible, then the description should be the preceding StaticText
|
394
|
-
elems = dut.elements
|
395
|
-
i = elems.index { |e| e[:type] == 'UIACollectionView' && e[:is_visible] }
|
396
|
-
return nil if i.nil?
|
397
|
-
elem = elems.select { |e| e[:type] == 'UIAStaticText' && elems.index(e) < i }.last
|
398
|
-
desc = elem[:name]
|
399
|
-
logger.info("Got visible episode description: #{desc}")
|
400
|
-
desc
|
401
|
-
end
|
402
|
-
|
403
|
-
# Returns true if successfully selected "Other" / "Other Ways to Watch" button, otherwise false
|
404
|
-
def select_other?
|
405
|
-
logger.info('Selecting "Other" / "Other Ways to Watch" button')
|
406
|
-
dut.tap?({:name => 'Other', :type => 'UIACollectionCell', :is_visible => true})
|
407
|
-
end
|
408
|
-
|
409
|
-
# Returns true if the "Watch Here" button is present in the "Other Ways to Watch" menu
|
410
|
-
def watch_here_button?
|
411
|
-
logger.info('Checking if "Watch Here" button is present')
|
412
|
-
dut.element?({:name => 'Watch Here', :type => 'UIAButton', :timeout => 10.sec})
|
413
|
-
end
|
414
|
-
|
415
|
-
# Returns true if the "Watch on TV" button is present in the "Other Ways to Watch" menu
|
416
|
-
def watch_on_tv_button?
|
417
|
-
logger.info('Checking if "Watch on TV" button is present')
|
418
|
-
dut.element?({:name => 'Watch on TV', :type => 'UIAButton', :timeout => 10.sec})
|
419
|
-
end
|
420
|
-
|
421
|
-
# Returns true if successfully selected "Info", otherwise false
|
422
|
-
def select_info?
|
423
|
-
logger.info('Selecting "Info"')
|
424
|
-
viewport = scroll_area
|
425
|
-
until_equals(true, :timeout => 15.min) do
|
426
|
-
dut.screens.product_page.scroll_up?(1, :area => viewport)
|
427
|
-
dut.screens.product_page.info_button?
|
428
|
-
end
|
429
|
-
dut.tap?({:name => 'Info', :type => 'UIAButton'})
|
430
|
-
end
|
431
|
-
|
432
|
-
# Returns the number of episodes available
|
433
|
-
def episodes_available
|
434
|
-
logger.info('Getting number of available episodes')
|
435
|
-
elem = dut.element({:name => 'regexp:\d+ episodes available'})
|
436
|
-
num = elem[:name].match(/^\d+/).to_s.to_i
|
437
|
-
logger.info("Got number of available episodes: #{num}")
|
438
|
-
num
|
439
|
-
end
|
440
|
-
|
441
|
-
end
|