JS: Add failing test due to overpruning

This commit is contained in:
Asger F
2023-09-01 13:53:51 +02:00
parent 43abc72780
commit 632cce2c16
3 changed files with 18 additions and 0 deletions

View File

@@ -1,4 +1,5 @@
consistencyIssue
| library-tests/frameworks/data/test.js:261 | expected an alert, but found none | NOT OK | |
taintFlow
| paramDecorator.ts:6:54:6:54 | x | paramDecorator.ts:7:10:7:10 | x |
| test.js:5:30:5:37 | source() | test.js:5:8:5:38 | testlib ... urce()) |

View File

@@ -272,3 +272,9 @@ class MySubclass2 extends MySubclass {
sink(new MySubclass2().baseclassSource()); // NOT OK
sink(testlib.parenthesizedPackageName()); // NOT OK
function dangerConstant() {
sink("danger-constant".danger); // NOT OK
sink("danger-constant".safe); // OK
sink("danger-constant"); // OK
}

View File

@@ -2,6 +2,17 @@ import javascript
import testUtilities.ConsistencyChecking
import semmle.javascript.frameworks.data.internal.ApiGraphModels as ApiGraphModels
class TypeModelFromCodeQL extends ModelInput::TypeModel {
override DataFlow::Node getASource(string type) {
type = "danger-constant" and
result.getStringValue() = "danger-constant"
}
}
class SourceFromDangerConstant extends ModelInput::SourceModelCsv {
override predicate row(string row) { row = "danger-constant;Member[danger];test-source" }
}
class BasicTaintTracking extends TaintTracking::Configuration {
BasicTaintTracking() { this = "BasicTaintTracking" }