async function shouldReturnKeys (protocolVersion, runnable) {
    if (protocolVersion < 4.0) {
      return
    }

    const result = await runnable
      .run("RETURN 1 as f1, true as f2, 'string' as f3")
      .keys()
      .pipe(materialize(), toArray())
      .toPromise()

    expect(result).toEqual([
      Notification.createNext(['f1', 'f2', 'f3']),
      Notification.createComplete()
    ])
  }
@param {number} protocolVersion
@param {RxSession|RxTransaction} runnable