$this->assertCoderReviewFail(' $results = db_query("SELECT * FROM {foo} WHERE name=$name");');
$this->assertCoderReviewFail(' db_query("INSERT INTO {foo} SET name=\'$name\'");');
$this->assertCoderReviewFail(' $sql = "INSERT INTO {foo} SET name=\'$name\'";');
- $this->assertCoderReviewPass(' update_sql("INSERT INTO {foo} SET name=\'$name\'");');
$this->assertCoderReviewPass(' db_result(db_query("SELECT filename FROM {system} WHERE name = \'%s\'", "ad_$detail->adtype"));');
}
$this->assertCoderReviewFail(' trigger_error(t("Here is some !tainted_data", array("!tainted_data" => $tainted_data));');
}
+/*
function testSecurityDrupalSetTitle() {
$this->assertCoderReviewPass(' drupal_set_title(t("Here is some safe_data"));');
$this->assertCoderReviewPass(' drupal_set_title(t("Here is some @safe_data", array("@safe_data" => $tainted_data));');
$this->assertCoderReviewFail(' drupal_set_title(t("Here is some ". $tainted_data));');
$this->assertCoderReviewFail(' drupal_set_title(t("Here is some !tainted_data", array("!tainted_data" => $tainted_data));');
}
+ */
function testSecurityFormError() {
$this->assertCoderReviewPass(' form_error("name", t("Here is some safe_data"));');
$this->assertCoderReviewFail(' $text=preg_replace("/^((> ?)+)([^>])/me", "EMAILDIV". ($oldest - substr_count("$1",">")).":$3", $text);');
}
+/*
function testSecurityDbRewrite() {
// Have to put all in a function foo() because tests don't work correctly due to #function-not in rule.
$this->assertCoderReviewPass(" function foo() {\n \$results = db_query(db_rewrite_sql(\"SELECT * FROM {node} n\"));\n}");
$this->assertCoderReviewFail(" function foo() {\n \$results = db_query(\"SELECT * FROM {mytable} t INNER JOIN {node} n ON t.nid = n.nid\");\n}");
$this->assertCoderReviewFail(" function foo() {\n \$results = db_query(db_rewrite_sql(\"SELECT * FROM {mytable} t INNER JOIN {node} ON t.nid = n.nid\"));\n}");
}
+ */
function testSecurityPostGetRequest() {
$this->assertCoderReviewPass(' $_POST["safe_data"] = "abc";');