1// RUN: %exploded_graph_rewriter -d %s | FileCheck %s
2
3// FIXME: Substitution doesn't seem to work on Windows.
4// UNSUPPORTED: system-windows
5
6// No diffs on the first node, nothing to check.
7Node0x1 [shape=record,label=
8 "{
9    { "node_id": 1,
10      "pointer": "0x1",
11      "state_id": 2,
12      "program_points": [],
13      "program_state": {
14        "store": null,
15        "environment": [
16          {
17            "location_context": "#0 Call",
18            "lctx_id": 3,
19            "calling": "foo",
20            "call_line": 4,
21            "items": [
22              {
23                "stmt_id": 5,
24                "pretty": "bar()",
25                "value": "Unknown"
26              }
27            ]
28          }
29        ]
30      }
31    }
32\l}"];
33
34Node0x1 -> Node0x6;
35
36// CHECK: Node0x6 [
37// CHECK-SAME: <tr>
38// CHECK-SAME:   <td><font color="red">-</font></td>
39// CHECK-SAME:   <td align="left"><i>S5</i></td>
40// CHECK-SAME:   <td align="left">bar()</td>
41// CHECK-SAME:   <td align="left">Unknown</td>
42// CHECK-SAME: </tr>
43// CHECK-SAME: <tr>
44// CHECK-SAME:   <td><font color="forestgreen">+</font></td>
45// CHECK-SAME:   <td align="left"><i>S9</i></td>
46// CHECK-SAME:   <td align="left">baz()</td>
47// CHECK-SAME:   <td align="left">Undefined</td>
48// CHECK-SAME: </tr>
49Node0x6 [shape=record,label=
50 "{
51    { "node_id": 6,
52      "pointer": "0x6",
53      "state_id": 7,
54      "program_points": [],
55      "program_state": {
56        "store": null,
57        "environment": [
58          {
59            "location_context": "#0 Call",
60            "lctx_id": 3,
61            "calling": "foo",
62            "call_line": 4,
63            "items": [
64              {
65                "stmt_id": 9,
66                "pretty": "baz()",
67                "value": "Undefined"
68              }
69            ]
70          }
71        ]
72      }
73    }
74\l}"];
75
76Node0x6 -> Node0x9;
77// Make sure that the last node in the path is not diffed.
78// CHECK: Node0x9 [
79// CHECK-SAME: <tr>
80// CHECK-SAME:   <td></td>
81// CHECK-SAME:   <td align="left"><i>S9</i></td>
82// CHECK-SAME:   <td align="left">baz()</td>
83// CHECK-SAME:   <td align="left">Undefined</td>
84// CHECK-SAME: </tr>
85Node0x9 [shape=record,label=
86 "{
87    { "node_id": 9,
88      "pointer": "0x9",
89      "state_id": 7,
90      "program_points": [],
91      "program_state": {
92        "store": null,
93        "environment": [
94          {
95            "location_context": "#0 Call",
96            "lctx_id": 3,
97            "calling": "foo",
98            "call_line": 4,
99            "items": [
100              {
101                "stmt_id": 9,
102                "pretty": "baz()",
103                "value": "Undefined"
104              }
105            ]
106          }
107        ]
108      }
109    }
110\l}"];
111