Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

add_task(async function test_get_query_param_sql_function() {
let db = await PlacesUtils.promiseDBConnection();
await Assert.rejects(
db.execute(`SELECT get_query_param()`),
/wrong number of arguments/
);
let rows = await db.execute(`SELECT
get_query_param('a=b&c=d', 'a'),
get_query_param('a=b&c=d', 'c'),
get_query_param('a=b&a=c', 'a'),
get_query_param('a=b&c=d', 'e'),
get_query_param('a', 'a'),
get_query_param(NULL, NULL),
get_query_param('a=b&c=d', NULL),
get_query_param(NULL, 'a')`);
let results = ["b", "d", "b", null, "", null, null, null];
equal(rows[0].numEntries, results.length);
for (let i = 0; i < results.length; ++i) {
equal(rows[0].getResultByIndex(i), results[i]);
}
});