mirror of
https://github.com/github/codeql.git
synced 2025-12-17 01:03:14 +01:00
JavaScript: Consolidate PropWrite tests.
This commit is contained in:
@@ -1,34 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | constructor() {} |
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:39 | constru ... eld) {} |
|
||||
| classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:68 | constru ... + 42; } |
|
||||
| classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:46 | constru ... {}) {} |
|
||||
| classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:12:9:12:8 | constructor() {} |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:16:3:18:3 | f(x) {\\n ... x);\\n } |
|
||||
| tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:33:5:33:10 | [v]: 2 |
|
||||
| tst.js:34:5:34:14 | [vv.pp]: 3 |
|
||||
| tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 |
|
||||
| tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:27:42:29 | "d" |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::PropWrite p
|
||||
select p
|
||||
3
javascript/ql/test/library-tests/PropWrite/PropWrite.qll
Normal file
3
javascript/ql/test/library-tests/PropWrite/PropWrite.qll
Normal file
@@ -0,0 +1,3 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_PropWrite(DataFlow::PropWrite p) { any() }
|
||||
@@ -1,28 +0,0 @@
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); | classes.ts:3:21:3:20 | this |
|
||||
| classes.ts:8:15:8:35 | public ... erField | classes.ts:8:3:8:2 | this |
|
||||
| classes.ts:12:17:12:37 | public ... erField | classes.ts:12:5:12:4 | this |
|
||||
| classes.ts:16:17:16:37 | public ... erField | classes.ts:16:5:16:4 | this |
|
||||
| tst.js:3:5:3:8 | x: 4 | tst.js:2:11:10:1 | {\\n x ... }\\n} |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } | tst.js:2:11:10:1 | {\\n x ... }\\n} |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } | tst.js:2:11:10:1 | {\\n x ... }\\n} |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } | tst.js:12:1:19:1 | class C ... ;\\n }\\n} |
|
||||
| tst.js:21:1:21:6 | C.prop | tst.js:21:1:21:1 | C |
|
||||
| tst.js:24:13:24:27 | onClick={click} | tst.js:24:8:24:57 | <div on ... }</div> |
|
||||
| tst.js:27:3:27:26 | get x() ... null; } | tst.js:26:2:29:1 | {\\n get ... v) {}\\n} |
|
||||
| tst.js:28:3:28:13 | set y(v) {} | tst.js:26:2:29:1 | {\\n get ... v) {}\\n} |
|
||||
| tst.js:32:5:32:8 | n: 1 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:33:5:33:10 | [v]: 2 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:34:5:34:14 | [vv.pp]: 3 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:38:13:38:15 | "a" | tst.js:38:12:38:26 | ["a", "b", "c"] |
|
||||
| tst.js:38:18:38:20 | "b" | tst.js:38:12:38:26 | ["a", "b", "c"] |
|
||||
| tst.js:38:23:38:25 | "c" | tst.js:38:12:38:26 | ["a", "b", "c"] |
|
||||
| tst.js:39:13:39:15 | "a" | tst.js:39:12:39:23 | ["a", , "c"] |
|
||||
| tst.js:39:20:39:22 | "c" | tst.js:39:12:39:23 | ["a", , "c"] |
|
||||
| tst.js:40:15:40:17 | "b" | tst.js:40:12:40:23 | [, "b", "c"] |
|
||||
| tst.js:40:20:40:22 | "c" | tst.js:40:12:40:23 | [, "b", "c"] |
|
||||
| tst.js:41:13:41:15 | "a" | tst.js:41:12:41:22 | ["a", "b",] |
|
||||
| tst.js:41:18:41:20 | "b" | tst.js:41:12:41:22 | ["a", "b",] |
|
||||
| tst.js:42:13:42:15 | "a" | tst.js:42:12:42:30 | ["a", ...arr3, "d"] |
|
||||
| tst.js:42:18:42:24 | ...arr3 | tst.js:42:12:42:30 | ["a", ...arr3, "d"] |
|
||||
| tst.js:42:27:42:29 | "d" | tst.js:42:12:42:30 | ["a", ...arr3, "d"] |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::PropWrite p
|
||||
select p, p.getBase()
|
||||
@@ -0,0 +1,3 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_PropWriteBase(DataFlow::PropWrite p, DataFlow::Node res) { res = p.getBase() }
|
||||
@@ -1,19 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | constructor() {} | constructor |
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); | instanceField |
|
||||
| classes.ts:8:3:8:39 | constru ... eld) {} | constructor |
|
||||
| classes.ts:8:15:8:35 | public ... erField | parameterField |
|
||||
| classes.ts:12:5:12:68 | constru ... + 42; } | constructor |
|
||||
| classes.ts:12:17:12:37 | public ... erField | parameterField |
|
||||
| classes.ts:16:5:16:46 | constru ... {}) {} | constructor |
|
||||
| classes.ts:16:17:16:37 | public ... erField | parameterField |
|
||||
| tst.js:3:5:3:8 | x: 4 | x |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } | func |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } | f |
|
||||
| tst.js:12:9:12:8 | constructor() {} | constructor |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } | func |
|
||||
| tst.js:16:3:18:3 | f(x) {\\n ... x);\\n } | f |
|
||||
| tst.js:21:1:21:6 | C.prop | prop |
|
||||
| tst.js:24:13:24:27 | onClick={click} | onClick |
|
||||
| tst.js:27:3:27:26 | get x() ... null; } | x |
|
||||
| tst.js:28:3:28:13 | set y(v) {} | y |
|
||||
| tst.js:32:5:32:8 | n: 1 | n |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::PropWrite p
|
||||
select p, p.getPropertyName()
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_PropWritePropName(DataFlow::PropWrite p, string res) {
|
||||
res = p.getPropertyName()
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | constructor() {} | classes.ts:3:21:3:20 | () {} |
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); | classes.ts:4:19:4:23 | foo() |
|
||||
| classes.ts:8:3:8:39 | constru ... eld) {} | classes.ts:8:3:8:39 | constru ... eld) {} |
|
||||
| classes.ts:8:15:8:35 | public ... erField | classes.ts:8:22:8:35 | parameterField |
|
||||
| classes.ts:12:5:12:68 | constru ... + 42; } | classes.ts:12:5:12:68 | constru ... + 42; } |
|
||||
| classes.ts:12:17:12:37 | public ... erField | classes.ts:12:24:12:37 | parameterField |
|
||||
| classes.ts:16:5:16:46 | constru ... {}) {} | classes.ts:16:5:16:46 | constru ... {}) {} |
|
||||
| classes.ts:16:17:16:37 | public ... erField | classes.ts:16:24:16:37 | parameterField |
|
||||
| classes.ts:16:17:16:37 | public ... erField | classes.ts:16:41:16:42 | {} |
|
||||
| tst.js:3:5:3:8 | x: 4 | tst.js:3:8:3:8 | 4 |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } | tst.js:4:11:6:5 | functio ... ;\\n } |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } | tst.js:7:6:9:5 | () {\\n ... ;\\n } |
|
||||
| tst.js:12:9:12:8 | constructor() {} | tst.js:12:9:12:8 | () {} |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } | tst.js:13:14:15:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:16:3:18:3 | f(x) {\\n ... x);\\n } | tst.js:16:4:18:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:21:1:21:6 | C.prop | tst.js:21:10:21:11 | 56 |
|
||||
| tst.js:24:13:24:27 | onClick={click} | tst.js:24:22:24:26 | click |
|
||||
| tst.js:32:5:32:8 | n: 1 | tst.js:32:8:32:8 | 1 |
|
||||
| tst.js:33:5:33:10 | [v]: 2 | tst.js:33:10:33:10 | 2 |
|
||||
| tst.js:34:5:34:14 | [vv.pp]: 3 | tst.js:34:14:34:14 | 3 |
|
||||
| tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 | tst.js:35:20:35:20 | 4 |
|
||||
| tst.js:38:13:38:15 | "a" | tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:18:38:20 | "b" | tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:23:38:25 | "c" | tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:13:39:15 | "a" | tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:20:39:22 | "c" | tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:15:40:17 | "b" | tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:20:40:22 | "c" | tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:13:41:15 | "a" | tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:18:41:20 | "b" | tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:13:42:15 | "a" | tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:18:42:24 | ...arr3 | tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:27:42:29 | "d" | tst.js:42:27:42:29 | "d" |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::PropWrite p
|
||||
select p, p.getRhs()
|
||||
@@ -0,0 +1,3 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_PropWriteRhs(DataFlow::PropWrite p, DataFlow::Node res) { res = p.getRhs() }
|
||||
@@ -1,11 +0,0 @@
|
||||
| tst.js:1:1:1:0 | this | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:14:5:14:11 | console | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:23:15:23:29 | this.someMethod | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:36:24:45 | this.state | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:34:6:34:7 | vv | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:45:3:45:9 | console | tst.js:45:3:45:13 | console.log |
|
||||
| tst.js:45:15:45:17 | obj | tst.js:45:15:45:20 | obj[p] |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd
|
||||
select nd, nd.getAPropertyRead()
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertyRead(DataFlow::SourceNode nd, DataFlow::PropRead res) {
|
||||
res = nd.getAPropertyRead()
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
| tst.js:1:1:1:0 | this | someMethod | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | state | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:14:5:14:11 | console | log | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | log | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:23:15:23:29 | this.someMethod | bind | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:36:24:45 | this.state | name | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:34:6:34:7 | vv | pp | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | ppp | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | qqq | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:45:3:45:9 | console | log | tst.js:45:3:45:13 | console.log |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd, string prop
|
||||
select nd, prop, nd.getAPropertyRead(prop)
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertyRead2(DataFlow::SourceNode nd, string prop, DataFlow::PropRead res) {
|
||||
res = nd.getAPropertyRead(prop)
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | this | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:1:1:1:0 | this | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:14:5:14:11 | console | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:21:1:21:1 | C | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:23:15:23:29 | this.someMethod | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:24:36:24:45 | this.state | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:33:5:33:10 | [v]: 2 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:34:5:34:14 | [vv.pp]: 3 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 |
|
||||
| tst.js:34:6:34:7 | vv | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:27:42:29 | "d" |
|
||||
| tst.js:45:3:45:9 | console | tst.js:45:3:45:13 | console.log |
|
||||
| tst.js:45:15:45:17 | obj | tst.js:45:15:45:20 | obj[p] |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd
|
||||
select nd, nd.getAPropertyReference()
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertyReference(DataFlow::SourceNode nd, DataFlow::PropRef res) {
|
||||
res = nd.getAPropertyReference()
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:1:1:1:0 | this | someMethod | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | state | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | x | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:14:5:14:11 | console | log | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | log | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:21:1:21:1 | C | prop | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:23:15:23:29 | this.someMethod | bind | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:24:36:24:45 | this.state | name | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | x | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | y | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | n | tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:34:6:34:7 | vv | pp | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | ppp | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | qqq | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:45:3:45:9 | console | log | tst.js:45:3:45:13 | console.log |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd, string prop
|
||||
select nd, prop, nd.getAPropertyReference(prop)
|
||||
@@ -0,0 +1,7 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertyReference2(
|
||||
DataFlow::SourceNode nd, string prop, DataFlow::PropRef res
|
||||
) {
|
||||
res = nd.getAPropertyReference(prop)
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:19:4:23 | foo() |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:22:8:35 | parameterField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:24:12:37 | parameterField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:41:12:42 | {} |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:24:16:37 | parameterField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:41:16:42 | {} |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:6:9:5 | () {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:11:6:5 | functio ... ;\\n } |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:14:15:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:22:24:26 | click |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd, string prop
|
||||
select nd, prop, nd.getAPropertySource(prop)
|
||||
@@ -0,0 +1,7 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertySource(
|
||||
DataFlow::SourceNode nd, string prop, DataFlow::SourceNode res
|
||||
) {
|
||||
res = nd.getAPropertySource(prop)
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | this | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:21:1:21:1 | C | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:33:5:33:10 | [v]: 2 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:34:5:34:14 | [vv.pp]: 3 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:27:42:29 | "d" |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd
|
||||
select nd, nd.getAPropertyWrite()
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertyWrite(DataFlow::SourceNode nd, DataFlow::PropWrite res) {
|
||||
res = nd.getAPropertyWrite()
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | x | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:21:1:21:1 | C | prop | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | x | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | y | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | n | tst.js:32:5:32:8 | n: 1 |
|
||||
@@ -1,4 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode nd, string prop
|
||||
select nd, prop, nd.getAPropertyWrite(prop)
|
||||
@@ -0,0 +1,7 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_getAPropertyWrite2(
|
||||
DataFlow::SourceNode nd, string prop, DataFlow::PropWrite res
|
||||
) {
|
||||
res = nd.getAPropertyWrite(prop)
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:19:4:23 | foo() |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:22:8:35 | parameterField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:24:12:37 | parameterField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:24:16:37 | parameterField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:41:16:42 | {} |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:6:9:5 | () {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:11:6:5 | functio ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | x | tst.js:3:8:3:8 | 4 |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:14:15:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:21:1:21:1 | C | prop | tst.js:21:10:21:11 | 56 |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:22:24:26 | click |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | n | tst.js:32:8:32:8 | 1 |
|
||||
@@ -1,5 +0,0 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::SourceNode src, string prop, DataFlow::Node rhs
|
||||
where src.hasPropertyWrite(prop, rhs)
|
||||
select src, prop, rhs
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
query predicate test_hasPropertyWrite(DataFlow::SourceNode src, string prop, DataFlow::Node rhs) {
|
||||
src.hasPropertyWrite(prop, rhs)
|
||||
}
|
||||
272
javascript/ql/test/library-tests/PropWrite/tests.expected
Normal file
272
javascript/ql/test/library-tests/PropWrite/tests.expected
Normal file
@@ -0,0 +1,272 @@
|
||||
test_getAPropertyRead
|
||||
| tst.js:1:1:1:0 | this | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:14:5:14:11 | console | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:23:15:23:29 | this.someMethod | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:36:24:45 | this.state | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:34:6:34:7 | vv | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:45:3:45:9 | console | tst.js:45:3:45:13 | console.log |
|
||||
| tst.js:45:15:45:17 | obj | tst.js:45:15:45:20 | obj[p] |
|
||||
test_getAPropertyReference
|
||||
| classes.ts:3:21:3:20 | this | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:1:1:1:0 | this | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:14:5:14:11 | console | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:21:1:21:1 | C | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:23:15:23:29 | this.someMethod | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:24:36:24:45 | this.state | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:33:5:33:10 | [v]: 2 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:34:5:34:14 | [vv.pp]: 3 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 |
|
||||
| tst.js:34:6:34:7 | vv | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:27:42:29 | "d" |
|
||||
| tst.js:45:3:45:9 | console | tst.js:45:3:45:13 | console.log |
|
||||
| tst.js:45:15:45:17 | obj | tst.js:45:15:45:20 | obj[p] |
|
||||
test_getAPropertySource
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:19:4:23 | foo() |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:22:8:35 | parameterField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:24:12:37 | parameterField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:41:12:42 | {} |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:24:16:37 | parameterField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:41:16:42 | {} |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:6:9:5 | () {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:11:6:5 | functio ... ;\\n } |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:14:15:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:22:24:26 | click |
|
||||
test_PropWritePropName
|
||||
| classes.ts:3:21:3:20 | constructor() {} | constructor |
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); | instanceField |
|
||||
| classes.ts:8:3:8:39 | constru ... eld) {} | constructor |
|
||||
| classes.ts:8:15:8:35 | public ... erField | parameterField |
|
||||
| classes.ts:12:5:12:68 | constru ... + 42; } | constructor |
|
||||
| classes.ts:12:17:12:37 | public ... erField | parameterField |
|
||||
| classes.ts:16:5:16:46 | constru ... {}) {} | constructor |
|
||||
| classes.ts:16:17:16:37 | public ... erField | parameterField |
|
||||
| tst.js:3:5:3:8 | x: 4 | x |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } | func |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } | f |
|
||||
| tst.js:12:9:12:8 | constructor() {} | constructor |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } | func |
|
||||
| tst.js:16:3:18:3 | f(x) {\\n ... x);\\n } | f |
|
||||
| tst.js:21:1:21:6 | C.prop | prop |
|
||||
| tst.js:24:13:24:27 | onClick={click} | onClick |
|
||||
| tst.js:27:3:27:26 | get x() ... null; } | x |
|
||||
| tst.js:28:3:28:13 | set y(v) {} | y |
|
||||
| tst.js:32:5:32:8 | n: 1 | n |
|
||||
test_getAPropertyRead2
|
||||
| tst.js:1:1:1:0 | this | someMethod | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | state | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:14:5:14:11 | console | log | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | log | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:23:15:23:29 | this.someMethod | bind | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:36:24:45 | this.state | name | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:34:6:34:7 | vv | pp | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | ppp | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | qqq | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:45:3:45:9 | console | log | tst.js:45:3:45:13 | console.log |
|
||||
test_getAPropertyReference2
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:1:1:1:0 | this | someMethod | tst.js:23:15:23:29 | this.someMethod |
|
||||
| tst.js:1:1:1:0 | this | state | tst.js:24:36:24:45 | this.state |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | x | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:14:5:14:11 | console | log | tst.js:14:5:14:15 | console.log |
|
||||
| tst.js:17:5:17:11 | console | log | tst.js:17:5:17:15 | console.log |
|
||||
| tst.js:21:1:21:1 | C | prop | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:23:15:23:29 | this.someMethod | bind | tst.js:23:15:23:34 | this.someMethod.bind |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:24:36:24:45 | this.state | name | tst.js:24:36:24:50 | this.state.name |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | x | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | y | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | n | tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:34:6:34:7 | vv | pp | tst.js:34:6:34:10 | vv.pp |
|
||||
| tst.js:35:6:35:8 | vvv | ppp | tst.js:35:6:35:12 | vvv.ppp |
|
||||
| tst.js:35:6:35:12 | vvv.ppp | qqq | tst.js:35:6:35:16 | vvv.ppp.qqq |
|
||||
| tst.js:45:3:45:9 | console | log | tst.js:45:3:45:13 | console.log |
|
||||
test_hasPropertyWrite
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:19:4:23 | foo() |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:22:8:35 | parameterField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:24:12:37 | parameterField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:24:16:37 | parameterField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:41:16:42 | {} |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:6:9:5 | () {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:11:6:5 | functio ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | x | tst.js:3:8:3:8 | 4 |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:14:15:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:21:1:21:1 | C | prop | tst.js:21:10:21:11 | 56 |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:22:24:26 | click |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | n | tst.js:32:8:32:8 | 1 |
|
||||
test_PropWriteBase
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); | classes.ts:3:21:3:20 | this |
|
||||
| classes.ts:8:15:8:35 | public ... erField | classes.ts:8:3:8:2 | this |
|
||||
| classes.ts:12:17:12:37 | public ... erField | classes.ts:12:5:12:4 | this |
|
||||
| classes.ts:16:17:16:37 | public ... erField | classes.ts:16:5:16:4 | this |
|
||||
| tst.js:3:5:3:8 | x: 4 | tst.js:2:11:10:1 | {\\n x ... }\\n} |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } | tst.js:2:11:10:1 | {\\n x ... }\\n} |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } | tst.js:2:11:10:1 | {\\n x ... }\\n} |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } | tst.js:12:1:19:1 | class C ... ;\\n }\\n} |
|
||||
| tst.js:21:1:21:6 | C.prop | tst.js:21:1:21:1 | C |
|
||||
| tst.js:24:13:24:27 | onClick={click} | tst.js:24:8:24:57 | <div on ... }</div> |
|
||||
| tst.js:27:3:27:26 | get x() ... null; } | tst.js:26:2:29:1 | {\\n get ... v) {}\\n} |
|
||||
| tst.js:28:3:28:13 | set y(v) {} | tst.js:26:2:29:1 | {\\n get ... v) {}\\n} |
|
||||
| tst.js:32:5:32:8 | n: 1 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:33:5:33:10 | [v]: 2 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:34:5:34:14 | [vv.pp]: 3 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 | tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} |
|
||||
| tst.js:38:13:38:15 | "a" | tst.js:38:12:38:26 | ["a", "b", "c"] |
|
||||
| tst.js:38:18:38:20 | "b" | tst.js:38:12:38:26 | ["a", "b", "c"] |
|
||||
| tst.js:38:23:38:25 | "c" | tst.js:38:12:38:26 | ["a", "b", "c"] |
|
||||
| tst.js:39:13:39:15 | "a" | tst.js:39:12:39:23 | ["a", , "c"] |
|
||||
| tst.js:39:20:39:22 | "c" | tst.js:39:12:39:23 | ["a", , "c"] |
|
||||
| tst.js:40:15:40:17 | "b" | tst.js:40:12:40:23 | [, "b", "c"] |
|
||||
| tst.js:40:20:40:22 | "c" | tst.js:40:12:40:23 | [, "b", "c"] |
|
||||
| tst.js:41:13:41:15 | "a" | tst.js:41:12:41:22 | ["a", "b",] |
|
||||
| tst.js:41:18:41:20 | "b" | tst.js:41:12:41:22 | ["a", "b",] |
|
||||
| tst.js:42:13:42:15 | "a" | tst.js:42:12:42:30 | ["a", ...arr3, "d"] |
|
||||
| tst.js:42:18:42:24 | ...arr3 | tst.js:42:12:42:30 | ["a", ...arr3, "d"] |
|
||||
| tst.js:42:27:42:29 | "d" | tst.js:42:12:42:30 | ["a", ...arr3, "d"] |
|
||||
test_getAPropertyWrite
|
||||
| classes.ts:3:21:3:20 | this | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:21:1:21:1 | C | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:33:5:33:10 | [v]: 2 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:34:5:34:14 | [vv.pp]: 3 |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:12:38:26 | ["a", "b", "c"] | tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:12:39:23 | ["a", , "c"] | tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:12:40:23 | [, "b", "c"] | tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:12:41:22 | ["a", "b",] | tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:12:42:30 | ["a", ...arr3, "d"] | tst.js:42:27:42:29 | "d" |
|
||||
test_PropWrite
|
||||
| classes.ts:3:21:3:20 | constructor() {} |
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:39 | constru ... eld) {} |
|
||||
| classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:68 | constru ... + 42; } |
|
||||
| classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:46 | constru ... {}) {} |
|
||||
| classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:12:9:12:8 | constructor() {} |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:16:3:18:3 | f(x) {\\n ... x);\\n } |
|
||||
| tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:32:5:32:8 | n: 1 |
|
||||
| tst.js:33:5:33:10 | [v]: 2 |
|
||||
| tst.js:34:5:34:14 | [vv.pp]: 3 |
|
||||
| tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 |
|
||||
| tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:27:42:29 | "d" |
|
||||
test_getAPropertyWrite2
|
||||
| classes.ts:3:21:3:20 | this | instanceField | classes.ts:4:3:4:24 | instanc ... foo(); |
|
||||
| classes.ts:8:3:8:2 | this | parameterField | classes.ts:8:15:8:35 | public ... erField |
|
||||
| classes.ts:12:5:12:4 | this | parameterField | classes.ts:12:17:12:37 | public ... erField |
|
||||
| classes.ts:16:5:16:4 | this | parameterField | classes.ts:16:17:16:37 | public ... erField |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | f | tst.js:7:5:9:5 | f() {\\n ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | func | tst.js:4:5:6:5 | func: f ... ;\\n } |
|
||||
| tst.js:2:11:10:1 | {\\n x ... }\\n} | x | tst.js:3:5:3:8 | x: 4 |
|
||||
| tst.js:12:1:19:1 | class C ... ;\\n }\\n} | func | tst.js:13:3:15:3 | static ... x);\\n } |
|
||||
| tst.js:21:1:21:1 | C | prop | tst.js:21:1:21:6 | C.prop |
|
||||
| tst.js:24:8:24:57 | <div on ... }</div> | onClick | tst.js:24:13:24:27 | onClick={click} |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | x | tst.js:27:3:27:26 | get x() ... null; } |
|
||||
| tst.js:26:2:29:1 | {\\n get ... v) {}\\n} | y | tst.js:28:3:28:13 | set y(v) {} |
|
||||
| tst.js:31:2:36:1 | {\\n n ... q]: 4\\n} | n | tst.js:32:5:32:8 | n: 1 |
|
||||
test_PropWriteRhs
|
||||
| classes.ts:3:21:3:20 | constructor() {} | classes.ts:3:21:3:20 | () {} |
|
||||
| classes.ts:4:3:4:24 | instanc ... foo(); | classes.ts:4:19:4:23 | foo() |
|
||||
| classes.ts:8:3:8:39 | constru ... eld) {} | classes.ts:8:3:8:39 | constru ... eld) {} |
|
||||
| classes.ts:8:15:8:35 | public ... erField | classes.ts:8:22:8:35 | parameterField |
|
||||
| classes.ts:12:5:12:68 | constru ... + 42; } | classes.ts:12:5:12:68 | constru ... + 42; } |
|
||||
| classes.ts:12:17:12:37 | public ... erField | classes.ts:12:24:12:37 | parameterField |
|
||||
| classes.ts:16:5:16:46 | constru ... {}) {} | classes.ts:16:5:16:46 | constru ... {}) {} |
|
||||
| classes.ts:16:17:16:37 | public ... erField | classes.ts:16:24:16:37 | parameterField |
|
||||
| classes.ts:16:17:16:37 | public ... erField | classes.ts:16:41:16:42 | {} |
|
||||
| tst.js:3:5:3:8 | x: 4 | tst.js:3:8:3:8 | 4 |
|
||||
| tst.js:4:5:6:5 | func: f ... ;\\n } | tst.js:4:11:6:5 | functio ... ;\\n } |
|
||||
| tst.js:7:5:9:5 | f() {\\n ... ;\\n } | tst.js:7:6:9:5 | () {\\n ... ;\\n } |
|
||||
| tst.js:12:9:12:8 | constructor() {} | tst.js:12:9:12:8 | () {} |
|
||||
| tst.js:13:3:15:3 | static ... x);\\n } | tst.js:13:14:15:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:16:3:18:3 | f(x) {\\n ... x);\\n } | tst.js:16:4:18:3 | (x) {\\n ... x);\\n } |
|
||||
| tst.js:21:1:21:6 | C.prop | tst.js:21:10:21:11 | 56 |
|
||||
| tst.js:24:13:24:27 | onClick={click} | tst.js:24:22:24:26 | click |
|
||||
| tst.js:32:5:32:8 | n: 1 | tst.js:32:8:32:8 | 1 |
|
||||
| tst.js:33:5:33:10 | [v]: 2 | tst.js:33:10:33:10 | 2 |
|
||||
| tst.js:34:5:34:14 | [vv.pp]: 3 | tst.js:34:14:34:14 | 3 |
|
||||
| tst.js:35:5:35:20 | [vvv.ppp.qqq]: 4 | tst.js:35:20:35:20 | 4 |
|
||||
| tst.js:38:13:38:15 | "a" | tst.js:38:13:38:15 | "a" |
|
||||
| tst.js:38:18:38:20 | "b" | tst.js:38:18:38:20 | "b" |
|
||||
| tst.js:38:23:38:25 | "c" | tst.js:38:23:38:25 | "c" |
|
||||
| tst.js:39:13:39:15 | "a" | tst.js:39:13:39:15 | "a" |
|
||||
| tst.js:39:20:39:22 | "c" | tst.js:39:20:39:22 | "c" |
|
||||
| tst.js:40:15:40:17 | "b" | tst.js:40:15:40:17 | "b" |
|
||||
| tst.js:40:20:40:22 | "c" | tst.js:40:20:40:22 | "c" |
|
||||
| tst.js:41:13:41:15 | "a" | tst.js:41:13:41:15 | "a" |
|
||||
| tst.js:41:18:41:20 | "b" | tst.js:41:18:41:20 | "b" |
|
||||
| tst.js:42:13:42:15 | "a" | tst.js:42:13:42:15 | "a" |
|
||||
| tst.js:42:18:42:24 | ...arr3 | tst.js:42:18:42:24 | ...arr3 |
|
||||
| tst.js:42:27:42:29 | "d" | tst.js:42:27:42:29 | "d" |
|
||||
12
javascript/ql/test/library-tests/PropWrite/tests.ql
Normal file
12
javascript/ql/test/library-tests/PropWrite/tests.ql
Normal file
@@ -0,0 +1,12 @@
|
||||
import getAPropertyRead
|
||||
import getAPropertyReference
|
||||
import getAPropertySource
|
||||
import PropWritePropName
|
||||
import getAPropertyRead2
|
||||
import getAPropertyReference2
|
||||
import hasPropertyWrite
|
||||
import PropWriteBase
|
||||
import getAPropertyWrite
|
||||
import PropWrite
|
||||
import getAPropertyWrite2
|
||||
import PropWriteRhs
|
||||
Reference in New Issue
Block a user