text: 
  const Utils = require('./Utils');
  const testIDs = require('../playground/src/testIDs');
  
  const { elementById } = Utils;
  
  describe(':ios: orientation', () => {
  
    beforeEach(async () => {
      await device.relaunchApp();
      waitForDeviceToSettleAfterOrientationChangeAndroid = ms => new Promise(res => setTimeout(res, device.getPlatform() === 'ios' ? 0 : 400));
    });
  
    test('default allows all', async () => {
      await elementById(testIDs.ORIENTATION_BUTTON).tap();
      await elementById(testIDs.DEFAULT_ORIENTATION_BUTTON).tap();
      waitForDeviceToSettleAfterOrientationChangeAndroid();
      await expect(elementById(testIDs.PORTRAIT_ELEMENT)).toBeVisible();
      await device.setOrientation('landscape');
      waitForDeviceToSettleAfterOrientationChangeAndroid();
      await expect(elementById(testIDs.LANDSCAPE_ELEMENT)).toBeVisible();
      await device.setOrientation('portrait');
      waitForDeviceToSettleAfterOrientationChangeAndroid();
      await expect(elementById(testIDs.PORTRAIT_ELEMENT)).toBeVisible();
      await elementById(testIDs.DISMISS_BUTTON).tap();
    });
  
    test('landscape and portrait array', async () => {
      await elementById(testIDs.ORIENTATION_BUTTON).tap();
      await elementById(testIDs.LANDSCAPE_PORTRAIT_ORIENTATION_BUTTON).tap();
      await expect(element(by.id(testIDs.PORTRAIT_ELEMENT))).toBeVisible();
      await device.setOrientation('landscape');
      waitForDeviceToSettleAfterOrientationChangeAndroid();
      await expect(element(by.id(testIDs.LANDSCAPE_ELEMENT))).toBeVisible();
      await device.setOrientation('portrait');
      waitForDeviceToSettleAfterOrientationChangeAndroid();
      await expect(element(by.id(testIDs.PORTRAIT_ELEMENT))).toBeVisible();
      await elementById(testIDs.DISMISS_BUTTON).tap();
    });
  
    test(':ios: portrait only', async () => {
      await elementById(testIDs.ORIENTATION_BUTTON).tap();
      await elementById(testIDs.PORTRAIT_ORIENTATION_BUTTON).tap();
      await expect(elementById(testIDs.PORTRAIT_ELEMENT)).toBeVisible();
      await device.setOrientation('landscape');
      await expect(elementById(testIDs.PORTRAIT_ELEMENT)).toBeVisible();
      await device.setOrientation('portrait');
      await expect(elementById(testIDs.PORTRAIT_ELEMENT)).toBeVisible();
      await elementById(testIDs.DISMISS_BUTTON).tap();
    });
  
    test(':ios: landscape only', async () => {
      await elementById(testIDs.ORIENTATION_BUTTON).tap();
      await elementById(testIDs.LANDSCAPE_ORIENTATION_BUTTON).tap();
      await device.setOrientation('landscape');
      await expect(element(by.id(testIDs.LANDSCAPE_ELEMENT))).toBeVisible();
      await device.setOrientation('portrait');
      await expect(element(by.id(testIDs.LANDSCAPE_ELEMENT))).toBeVisible();
      await elementById(testIDs.DISMISS_BUTTON).tap();
    });
  });
  