appId: com.edde746.plezy
name: Manage profiles and open settings
tags:
  - e2e
  - profiles
  - settings
---
- runFlow: ../subflows/ensure_onboarded.yaml
- tapOn: "(?s)^M(?:.*Profiles.*)?$"
- tapOn:
    text: "Profiles"
    above:
      text: "Settings"
- extendedWaitUntil:
    visible: "Switch Profile"
    timeout: 10000
- assertVisible: "(?s).*Maestro.*"
- tapOn: "Add Plezy profile"
- extendedWaitUntil:
    visible: "New profile"
    timeout: 10000
- tapOn: "e.g. Guests, Kids, Family Room"
- inputText: "E2E Guest"
- runFlow:
    when:
      platform: iOS
    commands:
      - pressKey: ENTER
- runFlow:
    when:
      platform: Android
    commands:
      - hideKeyboard
- tapOn: "Continue"
- extendedWaitUntil:
    visible: "Add to E2E Guest"
    timeout: 10000
- assertVisible: "(?s)^Sign in with Plex.*"
- assertVisible: "(?s)^Connect to Jellyfin.*"
- runFlow:
    when:
      platform: iOS
    commands:
      - tapOn: "Back"
- runFlow:
    when:
      platform: Android
    commands:
      - back
- assertVisible: "Switch Profile"
- assertVisible: "(?s).*E2E Guest.*"
- runFlow:
    when:
      platform: iOS
    commands:
      - tapOn: "Back"
- runFlow:
    when:
      platform: Android
    commands:
      - back
- extendedWaitUntil:
    visible: "(?s)^Home.*"
    timeout: 10000
- waitForAnimationToEnd:
    timeout: 5000
- repeat:
    times: 2
    while:
      notVisible: "Settings"
    commands:
      - tapOn: "(?s)^M(?:.*Profiles.*)?$"
      - waitForAnimationToEnd:
          timeout: 3000
- tapOn:
    text: "Settings"
    below:
      text: "Profiles"
- extendedWaitUntil:
    visible: "(?s)^Appearance.*"
    timeout: 10000
- assertVisible: "(?s)^Video Playback.*"
- assertVisible: "(?s)^Connections.*"
- runFlow:
    when:
      platform: Android
    file: ../subflows/settings_deep_checks.yaml
