node-query/node_modules/mysql2/test/integration/connection/test-disconnects.js

39 lines
1.0 KiB
JavaScript

var common = require('../../common');
var assert = require('assert');
var rows = undefined;
var fields = undefined;
var err;
var server;
function test() {
var connection = common.createConnection({port: 3307});
//var connection = require('mysql').createConnection({port: 3307});
connection.query('SELECT 123', function(err, _rows, _fields) {
if (err) throw err;
rows = _rows;
fields = _fields;
connection.on('error', function(_err) {
err = _err;
});
server.connections.forEach(function(conn) { conn.stream.end() } );
server._server.close(function() {
assert.equal(err.code, 'PROTOCOL_CONNECTION_LOST');
});
// TODO: tests for 'commands after close' behavior
// connection.query('SELECT 123', function(err, a, b) {
// console.log(err, a, b);
// });
});
// TODO: test connection.end() etc where we expect disconnect to happen
}
server = common.createServer(test);
process.on('exit', function() {
assert.deepEqual(rows, [{1: 1}]);
assert.equal(fields[0].name, '1');
});