title: Detox: Waiting for network requests to finish timeout
body: <p>I'm trying to set up <a href="https://github.com/wix/Detox" rel="noreferrer">detox</a> to run e2e tests on my app (react native + expokit). 
  As i had mentioned in <a href="https://github.com/wix/Detox/issues/1627" rel="noreferrer">https://github.com/wix/Detox/issues/1627</a>, my test keeps timing out with</p>
  
  <pre><code>Waiting for network requests to finish.: (
      "http://10.4.12.38:19001/symbolicate",
      "http://10.4.12.38:19001/symbolicate",
      "http://10.4.12.38:19001/symbolicate",
      "http://10.4.12.38:19001/symbolicate",
      "http://10.4.12.38:19001/onchange"
  )
  </code></pre>
  
  <p>I've added those urls to <code>detoxURLBlacklistRegex</code> but it doesn't do the trick. As I said in <a href="https://github.com/wix/Detox/issues/1627" rel="noreferrer">https://github.com/wix/Detox/issues/1627</a> i thought disabling live reload would make the tests pass but it is not <strong>always</strong> the case - sometimes it does, sometimes it times out. Here's my <code>init.js</code>:</p>
  
  <pre><code>const detox = require('detox');
  const adapter = require('detox/runners/jest/adapter');
  const specReporter = require('detox/runners/jest/specReporter');
  
  const config = require('../package.json').detox;
  
  // Set the default timeout
  jest.setTimeout(30000);
  jasmine.getEnv().addReporter(adapter);
  
  // This takes care of generating status logs on a per-spec basis. By default, jest only reports at file-level.
  // This is strictly optional.
  jasmine.getEnv().addReporter(specReporter);
  
  beforeAll(async () =&gt; {
    await detox.init(config, {
      launchApp: false,
    });
    await device.launchApp({
      permissions: { notifications: 'YES' },
      launchArgs: {
        detoxPrintBusyIdleResources: 'YES',
        detoxURLBlacklistRegex:
          '.*://10.4.12.38.*',
      },
    });
  });
  
  beforeEach(async () =&gt; {
    await adapter.beforeEach();
  });
  
  afterAll(async () =&gt; {
    await adapter.afterAll();
    await detox.cleanup();
  });
  </code></pre>
  
  <p>The issue is repoducible in this repo: <a href="https://github.com/clems36/detox-test" rel="noreferrer">https://github.com/clems36/detox-test</a></p>
  
  <p>Here's the trace:</p>
  
  <pre><code>detox[55327] TRACE: [Detox.js/DETOX_BEFORE_EACH] running test: "Example should show hello screen after tap"
  detox[55327] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onBeforeEach({
    title: 'should show hello screen after tap',
    fullName: 'Example should show hello screen after tap',
    status: 'running'
  })
  detox[55327] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"reactNativeReload","params":{},"messageId":-1000}
  detox[55327] TRACE: [DetoxServer.js/MESSAGE] role=tester action=reactNativeReload (sessionId=6ee3a6df-152d-a069-f95a-ecd53e7fc872)
  detox[55327] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"invoke","params":{"target":{"type":"Invocation","value":{"target":{"type":"EarlGrey","value":"instance"},"method":"detox_selectElementWithMatcher:","args":[{"type":"Invocation","value":{"target":{"type":"Class","value":"GREYMatchers"},"method":"matcherForAccessibilityID:","args":[{"type":"NSString","value":"hello_button"}]}}]}},"method":"performAction:","args":[{"type":"Invocation","value":{"target":{"type":"Class","value":"GREYActions"},"method":"actionForTap","args":[]}}]},"messageId":2}
  detox[55327] TRACE: [DetoxServer.js/MESSAGE] role=tester action=invoke (sessionId=6ee3a6df-152d-a069-f95a-ecd53e7fc872)
  Example: should show hello screen after tap [FAIL]
  Example: should show world screen after tap
  detox[55327] TRACE: [Detox.js/DETOX_AFTER_EACH] failed test: "Example should show hello screen after tap"
  detox[55327] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onAfterEach({
    title: 'should show hello screen after tap',
    fullName: 'Example should show hello screen after tap',
    status: 'failed',
    timedOut: true
  })
  detox[55327] WARN:  [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
    (id = 2) invoke: {"target":{"type":"Invocation","value":{"target":{"type":"EarlGrey","value":"instance"},"method":"detox_selectElementWithMatcher:","args":[{"type":"Invocation","value":{"target":{"type":"Class","value":"GREYMatchers"},"method":"matcherForAccessibilityID:","args":[{"type":"NSString","value":"hello_button"}]}}]}},"method":"performAction:","args":[{"type":"Invocation","value":{"target":{"type":"Class","value":"GREYActions"},"method":"actionForTap","args":[]}}]}
    (id = -1000) reactNativeReload: {}
  
  That might be the reason why the test "Example should show hello screen after tap" has timed out.
  </code></pre>