A Twitch.tv viewer reward and games system.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

39 lines
1.2 KiB

var common = require('../../common');
var connection = common.createConnection();
var assert = require('assert');
common.useTestDb(connection);
var table = 'zerofill_results_test';
connection.query([
'CREATE TEMPORARY TABLE `' + table + '` (',
'`id` int(11) unsigned NOT NULL AUTO_INCREMENT,',
'`num` int(5) UNSIGNED ZEROFILL,',
'PRIMARY KEY (`id`)',
') ENGINE=InnoDB DEFAULT CHARSET=utf8'
].join('\n'));
var test_numbers = [ "00000", "00001", "00012", "00123", "01234", "12345", null ];
var results = {};
for (var i = 0; i < test_numbers.length; i++) {
connection.query('INSERT INTO ' + table + ' SET ?', {
id: (i + 1),
num: (test_numbers[i] !== null ? parseInt(test_numbers[i], 10) : null)
}, function (err, _result) {
if (err) throw err;
});
}
connection.query('SELECT * FROM ' + table, function (err, _results) {
if (err) throw err;
results = _results;
});
connection.end();
process.on('exit', function() {
assert.strictEqual(results.length, test_numbers.length);
for (var i = 0; i < results.length; i++) {
assert.strictEqual(test_numbers[results[i].id - 1], (results[i].num !== null ? "" + results[i].num : null));
}
});