parent
55cc3aa987
commit
e9f31ee3d7
13 changed files with 152 additions and 20 deletions
@ -0,0 +1,27 @@ |
|||||||
|
/** |
||||||
|
* @fileoverview Description of this file. |
||||||
|
*/ |
||||||
|
|
||||||
|
goog.require('goog.testing.asserts'); |
||||||
|
|
||||||
|
var global = Function('return this')(); |
||||||
|
|
||||||
|
// The Google Closure assert functions start with assert, eg.
|
||||||
|
// assertThrows
|
||||||
|
// assertNotThrows
|
||||||
|
// assertTrue
|
||||||
|
// ...
|
||||||
|
//
|
||||||
|
// The one exception is the "fail" function.
|
||||||
|
function shouldExport(str) { |
||||||
|
return str.lastIndexOf('assert') === 0 || str == 'fail'; |
||||||
|
} |
||||||
|
|
||||||
|
for (var key in global) { |
||||||
|
if ((typeof key == "string") && global.hasOwnProperty(key) && |
||||||
|
shouldExport(key)) { |
||||||
|
exports[key] = global[key]; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
exports.COMPILED = COMPILED |
@ -1,11 +1,9 @@ |
|||||||
{ |
{ |
||||||
"spec_dir": "", |
"spec_dir": "", |
||||||
"spec_files": [ |
"spec_files": [ |
||||||
"*_test.js" |
"*_test.js", |
||||||
|
"binary/proto_test.js" |
||||||
], |
], |
||||||
"helpers": [ |
"helpers": [ |
||||||
"node_modules/google-closure-library/closure/goog/bootstrap/nodejs.js", |
|
||||||
"node_loader.js", |
|
||||||
"deps.js" |
|
||||||
] |
] |
||||||
} |
} |
||||||
|
@ -0,0 +1,45 @@ |
|||||||
|
/** |
||||||
|
* @fileoverview Description of this file. |
||||||
|
*/ |
||||||
|
|
||||||
|
var lineReader = require('readline').createInterface({ |
||||||
|
input: process.stdin, |
||||||
|
output: process.stdout |
||||||
|
}); |
||||||
|
|
||||||
|
var module = null; |
||||||
|
lineReader.on('line', function(line) { |
||||||
|
var is_require = line.match(/goog\.require\('([^']*\.)([^'.]+)'\)/); |
||||||
|
var is_loadfromfile = line.match(/CommonJS-LoadFromFile: (.*)/); |
||||||
|
var is_settestonly = line.match(/goog.setTestOnly()/); |
||||||
|
if (is_settestonly) { |
||||||
|
// Remove this line.
|
||||||
|
} else if (is_require) { |
||||||
|
if (module) { // Skip goog.require() lines before the first directive.
|
||||||
|
var pkg = is_require[1]; |
||||||
|
var sym = is_require[2]; |
||||||
|
console.log("google_protobuf.exportSymbol('" + pkg + sym + "', " + module + "." + sym + ', global);'); |
||||||
|
} |
||||||
|
} else if (is_loadfromfile) { |
||||||
|
if (!module) { |
||||||
|
console.log("var asserts = require('closure_asserts_commonjs');"); |
||||||
|
console.log("var global = Function('return this')();"); |
||||||
|
console.log(""); |
||||||
|
console.log("// Bring asserts into the global namespace."); |
||||||
|
console.log("for (var key in asserts) {"); |
||||||
|
console.log(" if (asserts.hasOwnProperty(key)) {"); |
||||||
|
console.log(" global[key] = asserts[key];"); |
||||||
|
console.log(" }"); |
||||||
|
console.log("}"); |
||||||
|
console.log(""); |
||||||
|
console.log("var google_protobuf = require('google-protobuf');"); |
||||||
|
} |
||||||
|
module = is_loadfromfile[1].replace("-", "_"); |
||||||
|
|
||||||
|
if (module != "google_protobuf") { // We unconditionally require this in the header.
|
||||||
|
console.log("var " + module + " = require('" + is_loadfromfile[1] + "');"); |
||||||
|
} |
||||||
|
} else { |
||||||
|
console.log(line); |
||||||
|
} |
||||||
|
}); |
Loading…
Reference in new issue