summaryrefslogtreecommitdiffstats
path: root/devtools/server/tests/xpcshell/test_listsources-02.js
blob: a2f9cc3bda580a1fdf950645f6e69f6dd1492697 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

/**
 * Check getting sources before there are any.
 */

var gNumTimesSourcesSent = 0;

add_task(
  threadFrontTest(async ({ threadFront, client }) => {
    client.request = (function (origRequest) {
      return function (request, onResponse) {
        if (request.type === "sources") {
          ++gNumTimesSourcesSent;
        }
        return origRequest.call(this, request, onResponse);
      };
    })(client.request);

    // Test listing zero sources
    const packet = await threadFront.getSources();

    Assert.ok(!packet.error);
    Assert.ok(!!packet.sources);
    Assert.equal(packet.sources.length, 0);

    Assert.ok(
      gNumTimesSourcesSent <= 1,
      "Should only send one sources request at most, even though we" +
        " might have had to send one to determine feature support."
    );
  })
);