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 "has_report": false, 12 "is_sink": false, 13 "state_id": 2, 14 "program_points": [], 15 "program_state": { 16 "store": null, 17 "constraints": null, 18 "dynamic_types": null, 19 "constructing_objects": null, 20 "checker_messages": null, 21 "environment": { 22 "pointer": "0x2", 23 "items": [ 24 { 25 "location_context": "#0 Call", 26 "lctx_id": 3, 27 "calling": "foo", 28 "location": null, 29 "items": [ 30 { 31 "stmt_id": 5, 32 "pretty": "bar()", 33 "value": "Unknown" 34 } 35 ] 36 } 37 ] 38 } 39 } 40 } 41\l}"]; 42 43Node0x1 -> Node0x6; 44 45// CHECK: Node0x6 [ 46// CHECK-SAME: <tr> 47// CHECK-SAME: <td><font color="red">-</font></td> 48// CHECK-SAME: <td align="left"><i>S5</i></td> 49// CHECK-SAME: <td align="left">bar()</td> 50// CHECK-SAME: <td align="left">Unknown</td> 51// CHECK-SAME: </tr> 52// CHECK-SAME: <tr> 53// CHECK-SAME: <td><font color="forestgreen">+</font></td> 54// CHECK-SAME: <td align="left"><i>S9</i></td> 55// CHECK-SAME: <td align="left">baz()</td> 56// CHECK-SAME: <td align="left">Undefined</td> 57// CHECK-SAME: </tr> 58Node0x6 [shape=record,label= 59 "{ 60 { "node_id": 6, 61 "pointer": "0x6", 62 "has_report": false, 63 "is_sink": false, 64 "state_id": 7, 65 "program_points": [], 66 "program_state": { 67 "store": null, 68 "constraints": null, 69 "dynamic_types": null, 70 "constructing_objects": null, 71 "checker_messages": null, 72 "environment": { 73 "pointer": "0x2", 74 "items": [ 75 { 76 "location_context": "#0 Call", 77 "lctx_id": 3, 78 "calling": "foo", 79 "location": null, 80 "items": [ 81 { 82 "stmt_id": 9, 83 "pretty": "baz()", 84 "value": "Undefined" 85 } 86 ] 87 } 88 ] 89 } 90 } 91 } 92\l}"]; 93 94Node0x6 -> Node0x9; 95// Make sure that the last node in the path is not diffed. 96// CHECK: Node0x9 [ 97// CHECK-SAME: <tr> 98// CHECK-SAME: <td></td> 99// CHECK-SAME: <td align="left"><i>S9</i></td> 100// CHECK-SAME: <td align="left">baz()</td> 101// CHECK-SAME: <td align="left">Undefined</td> 102// CHECK-SAME: </tr> 103Node0x9 [shape=record,label= 104 "{ 105 { "node_id": 9, 106 "pointer": "0x9", 107 "has_report": false, 108 "is_sink": false, 109 "state_id": 7, 110 "program_points": [], 111 "program_state": { 112 "store": null, 113 "constraints": null, 114 "dynamic_types": null, 115 "constructing_objects": null, 116 "checker_messages": null, 117 "environment": { 118 "pointer": "0x2", 119 "items": [ 120 { 121 "location_context": "#0 Call", 122 "lctx_id": 3, 123 "calling": "foo", 124 "location": null, 125 "items": [ 126 { 127 "stmt_id": 9, 128 "pretty": "baz()", 129 "value": "Undefined" 130 } 131 ] 132 } 133 ] 134 } 135 } 136 } 137\l}"]; 138