mirror of
https://github.com/github/codeql.git
synced 2025-12-21 19:26:31 +01:00
QL code and tests for C#/C++/JavaScript.
This commit is contained in:
17
javascript/ql/src/NodeJS/examples/CyclicImport.js
Normal file
17
javascript/ql/src/NodeJS/examples/CyclicImport.js
Normal file
@@ -0,0 +1,17 @@
|
||||
// a.js
|
||||
var b = require('./b');
|
||||
|
||||
var title = "Ms";
|
||||
|
||||
function example() {
|
||||
return title + " " + b.fullName;
|
||||
}
|
||||
|
||||
exports.firstName = "Ada";
|
||||
|
||||
// b.js
|
||||
var a = require('./a');
|
||||
|
||||
var lastName = "Lovelace";
|
||||
|
||||
exports.fullName = a.firstName + " " + lastName;
|
||||
14
javascript/ql/src/NodeJS/examples/CyclicImportGood.js
Normal file
14
javascript/ql/src/NodeJS/examples/CyclicImportGood.js
Normal file
@@ -0,0 +1,14 @@
|
||||
// a.js
|
||||
var b = require('./b');
|
||||
|
||||
var title = "Ms";
|
||||
|
||||
function example() {
|
||||
return title + " " + b.fullName;
|
||||
}
|
||||
|
||||
// b.js
|
||||
var firstName = "Ada",
|
||||
lastName = "Lovelace";
|
||||
|
||||
exports.fullName = firstName + " " + lastName;
|
||||
17
javascript/ql/src/NodeJS/examples/DubiousImport.js
Normal file
17
javascript/ql/src/NodeJS/examples/DubiousImport.js
Normal file
@@ -0,0 +1,17 @@
|
||||
// point.js
|
||||
function Point(x, y) {
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
}
|
||||
|
||||
Point.prototype.distance = function() {
|
||||
return Math.sqrt(this.x*this.x+this.y*this.y);
|
||||
};
|
||||
|
||||
module.exports = Point;
|
||||
|
||||
// client.js
|
||||
var Point = require('./point').Point;
|
||||
|
||||
var pyth = new Point(3, 4);
|
||||
console.log(pyth.distance());
|
||||
17
javascript/ql/src/NodeJS/examples/DubiousImportGood.js
Normal file
17
javascript/ql/src/NodeJS/examples/DubiousImportGood.js
Normal file
@@ -0,0 +1,17 @@
|
||||
// point.js
|
||||
function Point(x, y) {
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
}
|
||||
|
||||
Point.prototype.distance = function() {
|
||||
return Math.sqrt(this.x*this.x+this.y*this.y);
|
||||
};
|
||||
|
||||
module.exports = Point;
|
||||
|
||||
// client.js
|
||||
var Point = require('./point');
|
||||
|
||||
var pyth = new Point(3, 4);
|
||||
console.log(pyth.distance());
|
||||
17
javascript/ql/src/NodeJS/examples/InvalidExport.js
Normal file
17
javascript/ql/src/NodeJS/examples/InvalidExport.js
Normal file
@@ -0,0 +1,17 @@
|
||||
// point.js
|
||||
function Point(x, y) {
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
}
|
||||
|
||||
Point.prototype.distance = function() {
|
||||
return Math.sqrt(this.x*this.x+this.y*this.y);
|
||||
};
|
||||
|
||||
exports = Point;
|
||||
|
||||
// client.js
|
||||
var Point = require('./point');
|
||||
|
||||
var pyth = new Point(3, 4);
|
||||
console.log(pyth.distance());
|
||||
17
javascript/ql/src/NodeJS/examples/InvalidExportGood.js
Normal file
17
javascript/ql/src/NodeJS/examples/InvalidExportGood.js
Normal file
@@ -0,0 +1,17 @@
|
||||
// point.js
|
||||
function Point(x, y) {
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
}
|
||||
|
||||
Point.prototype.distance = function() {
|
||||
return Math.sqrt(this.x*this.x+this.y*this.y);
|
||||
};
|
||||
|
||||
module.exports = Point;
|
||||
|
||||
// client.js
|
||||
var Point = require('./point');
|
||||
|
||||
var pyth = new Point(3, 4);
|
||||
console.log(pyth.distance());
|
||||
8
javascript/ql/src/NodeJS/examples/MissingExports.js
Normal file
8
javascript/ql/src/NodeJS/examples/MissingExports.js
Normal file
@@ -0,0 +1,8 @@
|
||||
exports.checkOne = function(x) {
|
||||
if (!x) throw new Error();
|
||||
};
|
||||
|
||||
var checkList = exports.checkList = function(xs) {
|
||||
for (var i=0; i<xs.length; ++i)
|
||||
checkOne(xs[i]);
|
||||
};
|
||||
8
javascript/ql/src/NodeJS/examples/MissingExportsGood.js
Normal file
8
javascript/ql/src/NodeJS/examples/MissingExportsGood.js
Normal file
@@ -0,0 +1,8 @@
|
||||
exports.checkOne = function(x) {
|
||||
if (!x) throw new Error();
|
||||
};
|
||||
|
||||
var checkList = exports.checkList = function(xs) {
|
||||
for (var i=0; i<xs.length; ++i)
|
||||
exports.checkOne(xs[i]);
|
||||
};
|
||||
10
javascript/ql/src/NodeJS/examples/UnresolvableImport.js
Normal file
10
javascript/ql/src/NodeJS/examples/UnresolvableImport.js
Normal file
@@ -0,0 +1,10 @@
|
||||
// package.json
|
||||
{
|
||||
"name": "example-package",
|
||||
"version": "0.1.0"
|
||||
}
|
||||
|
||||
// index.js
|
||||
var acorn = require('acorn'),
|
||||
fs = require('fs');
|
||||
acorn.parse(fs.readFileSync('tst.js'), 'utf-8');
|
||||
13
javascript/ql/src/NodeJS/examples/UnresolvableImportGood.js
Normal file
13
javascript/ql/src/NodeJS/examples/UnresolvableImportGood.js
Normal file
@@ -0,0 +1,13 @@
|
||||
// package.json
|
||||
{
|
||||
"name": "example-package",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"acorn": "*"
|
||||
}
|
||||
}
|
||||
|
||||
// index.js
|
||||
var acorn = require('acorn'),
|
||||
fs = require('fs');
|
||||
acorn.parse(fs.readFileSync('tst.js'), 'utf-8');
|
||||
14
javascript/ql/src/NodeJS/examples/UnusedDependency.js
Normal file
14
javascript/ql/src/NodeJS/examples/UnusedDependency.js
Normal file
@@ -0,0 +1,14 @@
|
||||
// package.json
|
||||
{
|
||||
"name": "example-package",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"acorn": "*",
|
||||
"esprima": "~2.0.0"
|
||||
}
|
||||
}
|
||||
|
||||
// index.js
|
||||
var acorn = require('acorn'),
|
||||
fs = require('fs');
|
||||
acorn.parse(fs.readFileSync('tst.js'), 'utf-8');
|
||||
Reference in New Issue
Block a user