Closed vdelendik closed 7 months ago
we fixed usbreset usage for iOS and found that mcloud-device exited with 0 because temporary device is not accessible: https://github.com/zebrunner/mcloud-agent/issues/281
let's simplify direct go ios verifications and rely on the appium container state
@azarouski, I'd recommend to remove lines 22-35 https://github.com/zebrunner/mcloud-device/blob/b2a8074bcb7ec962a0bcc75b03c9e016067c21d2/files/start_all.sh#L22
and inject appium device family specific status call verification like this one: https://github.com/zebrunner/appium/blob/ce71aff1ad593bc40d4944ba5f1162778c4621e2/files/healthcheck#L9
But make sure to use wd/hub/status-wda
for iOS and /wd/hub/status-adb
for Android...
As appium host I believe linked container name might be used but don't know about appium port!
if curl -Is "http://appium:${APPIUM_PORT}/wd/hub/status" | head -1 | grep -q '200 OK'
the question is howto determine appium port inside the container
Basic acceptance with iOS-Preferences-Test ,Mobile-iOS-Safari-Test , Android-Demo-Test successfully completed. Video, screenshots and logs are available.
we already do a lot of verification onto the device state, it's pairing etc: https://github.com/zebrunner/appium/blob/e989b942f2e25cc83fce76ecf0e3320f4eb0ba18/files/ios.sh#L54
as mcloud-device depends on appium it doesn't have any sense to repeat the same verifications on this level. let's review and optimize go ios calls. Ideally, remove all of them.
The only problem, howto detect phone, tablet or tv device class