summaryrefslogtreecommitdiffstats
path: root/devtools/client/shared/test/unit/test_VariablesView_getString_promise.js
blob: a70c870bb0a80f4c24b98c5df25920f3c7900eed (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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set ts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

const { VariablesView } = Components.utils.import("resource://devtools/client/shared/widgets/VariablesView.jsm", {});

const PENDING = {
  "type": "object",
  "class": "Promise",
  "actor": "conn0.pausedobj35",
  "extensible": true,
  "frozen": false,
  "sealed": false,
  "promiseState": {
    "state": "pending"
  },
  "preview": {
    "kind": "Object",
    "ownProperties": {},
    "ownPropertiesLength": 0,
    "safeGetterValues": {}
  }
};

const FULFILLED = {
  "type": "object",
  "class": "Promise",
  "actor": "conn0.pausedobj35",
  "extensible": true,
  "frozen": false,
  "sealed": false,
  "promiseState": {
    "state": "fulfilled",
    "value": 10
  },
  "preview": {
    "kind": "Object",
    "ownProperties": {},
    "ownPropertiesLength": 0,
    "safeGetterValues": {}
  }
};

const REJECTED = {
  "type": "object",
  "class": "Promise",
  "actor": "conn0.pausedobj35",
  "extensible": true,
  "frozen": false,
  "sealed": false,
  "promiseState": {
    "state": "rejected",
    "reason": 10
  },
  "preview": {
    "kind": "Object",
    "ownProperties": {},
    "ownPropertiesLength": 0,
    "safeGetterValues": {}
  }
};

function run_test() {
  equal(VariablesView.getString(PENDING, { concise: true }), "Promise");
  equal(VariablesView.getString(PENDING), 'Promise {<state>: "pending"}');

  equal(VariablesView.getString(FULFILLED, { concise: true }), "Promise");
  equal(VariablesView.getString(FULFILLED),
        'Promise {<state>: "fulfilled", <value>: 10}');

  equal(VariablesView.getString(REJECTED, { concise: true }), "Promise");
  equal(VariablesView.getString(REJECTED), 'Promise {<state>: "rejected", <reason>: 10}');
}