mirror of
https://github.com/chrisnov-it/quantumbotx.git
synced 2026-07-28 11:17:44 +00:00
78737b6835
- Update `.gitignore` to include `lab/` for backtesting and raw data. - Refactor `app.py` to improve error handling and logging. - Remove deprecated files: `core/bot_logic.py`, `core/bots/base_bot.py`, `core/bots/manager.py`, `core/db/database.py`, `core/routes/api_analysis.py`, `core/routes/api_bots_analysis.py`, `core/strategies/logic_ma.py`, `core/strategies/logic_rsi.py`. - Modify multiple files to enhance bot management, routing, and strategy handling. - Update JavaScript and HTML templates for better UI and functionality.
55 lines
1.5 KiB
JavaScript
55 lines
1.5 KiB
JavaScript
var filename = process.argv[2] || './format.js'
|
|
, format = require(filename)
|
|
, printf = format.printf
|
|
;
|
|
|
|
function desc(x, indentLevel) {
|
|
indentLevel = indentLevel || 0;
|
|
var indent = new Array(indentLevel).join(' ');
|
|
if (typeof x == 'string' || (x && x.__proto__ == String.prototype)) {
|
|
return indent + '"' + x + '"';
|
|
}
|
|
else if (Array.isArray(x)) {
|
|
return indent + '[ ' + x.map(desc).join(', ') + ' ]';
|
|
}
|
|
else {
|
|
return '' + x;
|
|
}
|
|
}
|
|
|
|
function assertFormat(args, expected) {
|
|
var fmt = args[0];
|
|
var result = format.format.apply(format, args);
|
|
if (result !== expected) {
|
|
console.log('FORMAT: "' + fmt + '"');
|
|
console.log('ARGS: ' + desc(args.slice(1)));
|
|
console.log('RESULT: "' + result + '"');
|
|
throw new Error('assertion failed, ' + result + ' !== ' + expected);
|
|
}
|
|
}
|
|
|
|
console.log('Testing format:');
|
|
|
|
var tests = [
|
|
[['hello'], 'hello'],
|
|
[['hello %s', 'sami'], 'hello sami'],
|
|
[
|
|
['b: %b\nc: %c\nd: %d\nf: %f\no: %o\ns: %s\nx: %x\nX: %X', 42, 65, 42*42, 42*42*42/1000000000, 255, 'sami', 0xfeedface, 0xc0ffee],
|
|
"b: 101010\nc: A\nd: 1764\nf: 0.000074\no: 0377\ns: sami\nx: 0xfeedface\nX: 0xC0FFEE"
|
|
],
|
|
[['%.2f', 3.14159], '3.14'],
|
|
[['%0.2f', 3.14159], '3.14'],
|
|
[['%.2f', 0.1234], '.12'],
|
|
[['%0.2f', 0.1234], '0.12'],
|
|
[['foo %j', 42], 'foo 42'],
|
|
[['foo %j', '42'], 'foo "42"']
|
|
];
|
|
tests.forEach(function(spec) {
|
|
var args = spec[0];
|
|
var expected = spec[1];
|
|
assertFormat(args, expected);
|
|
console.log('pass (format ' + args[0] + ' == ' + expected + ')');
|
|
});
|
|
|
|
console.log('all passed');
|