mirror of
https://github.com/github/codeql.git
synced 2026-04-19 05:54:00 +02:00
Fix JsonArray.addAll model
Properly test JsonArray.add(String) and JsonArray.addAll(JsonArray) as well
This commit is contained in:
@@ -31,7 +31,7 @@ extensions:
|
||||
- ["com.google.gson", "JsonArray", True, "add", "(JsonElement)", "", "Argument[0]", "Argument[this].Element", "value", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "add", "(Number)", "", "Argument[0]", "Argument[this].Element", "taint", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "add", "(String)", "", "Argument[0]", "Argument[this].Element", "taint", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "add", "(JsonArray)", "", "Argument[0].Element", "Argument[this].Element", "value", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "addAll", "(JsonArray)", "", "Argument[0].Element", "Argument[this].Element", "value", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "asList", "", "", "Argument[this].Element", "ReturnValue.Element", "value", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "get", "", "", "Argument[this].Element", "ReturnValue", "value", "manual"]
|
||||
- ["com.google.gson", "JsonArray", True, "set", "", "", "Argument[1]", "Argument[this].Element", "value", "manual"]
|
||||
|
||||
@@ -260,23 +260,30 @@ public class Test {
|
||||
sink(getElement(out)); // $ hasTaintFlow
|
||||
}
|
||||
{
|
||||
// "com.google.gson;JsonArray;true;add;(JsonArray);;Argument[0].Element;Argument[this].Element;value;manual"
|
||||
// "com.google.gson;JsonArray;true;add;(String);;Argument[0];Argument[this].Element;taint;manual"
|
||||
JsonArray out = null;
|
||||
JsonElement in = (JsonElement)source();
|
||||
String in = (String)source();
|
||||
out.add(in);
|
||||
sink(getElement(out)); // $ hasTaintFlow
|
||||
}
|
||||
{
|
||||
// "com.google.gson;JsonArray;true;addAll;(JsonArray);;Argument[0].Element;Argument[this].Element;value;manual"
|
||||
JsonArray out = null;
|
||||
JsonArray in = newWithElementDefault((JsonElement) source());
|
||||
out.addAll(in);
|
||||
sink(getElement(out)); // $ hasValueFlow
|
||||
}
|
||||
{
|
||||
// "com.google.gson;JsonArray;true;asList;;;Argument[this].Element;ReturnValue.Element;value;manual"
|
||||
List out = null;
|
||||
JsonArray in = (JsonArray)newWithElementDefault((JsonElement) source());
|
||||
JsonArray in = newWithElementDefault((JsonElement) source());
|
||||
out = in.asList();
|
||||
sink(getElement(out)); // $ hasValueFlow
|
||||
}
|
||||
{
|
||||
// "com.google.gson;JsonArray;true;get;;;Argument[this].Element;ReturnValue;value;manual"
|
||||
JsonElement out = null;
|
||||
JsonArray in = (JsonArray)newWithElementDefault((JsonElement) source());
|
||||
JsonArray in = newWithElementDefault((JsonElement) source());
|
||||
out = in.get(0);
|
||||
sink(out); // $ hasValueFlow
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user