Skip to content

Commit 8143d34

Browse files
committed
tests: use dynamic port for unit tests
1 parent 34534d2 commit 8143d34

File tree

145 files changed

+897
-737
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

145 files changed

+897
-737
lines changed

test/FakeServer.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ FakeServer.prototype.listen = function(port, cb) {
3030
this._server.listen(port, cb);
3131
};
3232

33+
FakeServer.prototype.port = function() {
34+
return this._server.address().port;
35+
};
36+
3337
FakeServer.prototype._handleConnection = function(socket) {
3438
var connection = new FakeConnection(socket);
3539

test/common.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ common.bogusPort = 47378;
1010
// Useful for triggering ER_ACCESS_DENIED_ERROR errors on connect()
1111
common.bogusPassword = 'INVALID PASSWORD';
1212

13-
// Used for simulating a fake mysql server
14-
common.fakeServerPort = 32893;
1513
// Used for simulating a fake mysql server
1614
common.fakeServerSocket = __dirname + '/fake_server.sock';
1715

test/unit/connection/test-auth-no-old-password.js

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({
4-
port : common.fakeServerPort,
5-
user : 'root',
6-
password : null,
7-
insecureAuth : true
8-
});
1+
var assert = require('assert');
2+
var common = require('../../common');
93

104
var server = common.createFakeServer();
115

12-
server.listen(common.fakeServerPort, function (err) {
6+
server.listen(0, function (err) {
137
assert.ifError(err);
148

9+
var connection = common.createConnection({
10+
port : server.port(),
11+
user : 'root',
12+
password : null,
13+
insecureAuth : true
14+
});
15+
1516
connection.connect(function (err) {
1617
assert.ifError(err);
1718
connection.destroy();

test/unit/connection/test-auth-no-password.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({
4-
port : common.fakeServerPort,
5-
password : null,
6-
user : 'root'
7-
});
1+
var assert = require('assert');
2+
var common = require('../../common');
83

94
var server = common.createFakeServer();
105

11-
server.listen(common.fakeServerPort, function (err) {
6+
server.listen(0, function (err) {
127
assert.ifError(err);
138

9+
var connection = common.createConnection({
10+
port : server.port(),
11+
password : null,
12+
user : 'root'
13+
});
14+
1415
connection.connect(function (err) {
1516
assert.ifError(err);
1617
connection.destroy();

test/unit/connection/test-auth-old-password.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
1-
var common = require('../../common');
2-
var connection = common.createConnection({
3-
port : common.fakeServerPort,
4-
password : 'oldpw',
5-
insecureAuth : true
6-
});
7-
var assert = require('assert');
8-
var Auth = require(common.lib + '/protocol/Auth');
9-
var Crypto = require('crypto');
1+
var common = require('../../common');
2+
var assert = require('assert');
3+
var Auth = require(common.lib + '/protocol/Auth');
4+
var Crypto = require('crypto');
105

116
var random = Crypto.pseudoRandomBytes || Crypto.randomBytes; // Depends on node.js version
127
var server = common.createFakeServer();
138

14-
server.listen(common.fakeServerPort, function (err) {
9+
server.listen(0, function (err) {
1510
assert.ifError(err);
1611

12+
var connection = common.createConnection({
13+
port : server.port(),
14+
password : 'oldpw',
15+
insecureAuth : true
16+
});
17+
1718
connection.connect(function (err) {
1819
assert.ifError(err);
1920
connection.destroy();

test/unit/connection/test-auth-password.js

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
1-
var common = require('../../common');
2-
var connection = common.createConnection({
3-
port : common.fakeServerPort,
4-
password : 'passwd'
5-
});
6-
var assert = require('assert');
7-
var Auth = require(common.lib + '/protocol/Auth');
8-
var Crypto = require('crypto');
1+
var common = require('../../common');
2+
var assert = require('assert');
3+
var Auth = require(common.lib + '/protocol/Auth');
4+
var Crypto = require('crypto');
95

106
var random = Crypto.pseudoRandomBytes || Crypto.randomBytes; // Depends on node.js version
117
var server = common.createFakeServer();
128

13-
server.listen(common.fakeServerPort, function(err) {
9+
server.listen(0, function(err) {
1410
assert.ifError(err);
1511

12+
var connection = common.createConnection({
13+
port : server.port(),
14+
password : 'passwd'
15+
});
16+
1617
connection.connect(function (err) {
1718
assert.ifError(err);
1819
connection.destroy();

test/unit/connection/test-auth-switch-native.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
1-
var assert = require('assert');
2-
var Crypto = require('crypto');
3-
var common = require('../../common');
4-
var connection = common.createConnection({
5-
port : common.fakeServerPort,
6-
password : 'authswitch'
7-
});
1+
var assert = require('assert');
2+
var common = require('../../common');
3+
var Crypto = require('crypto');
84

95
var random = Crypto.pseudoRandomBytes || Crypto.randomBytes; // Depends on node.js version
106
var server = common.createFakeServer();
117

128
var connected;
13-
server.listen(common.fakeServerPort, function (err) {
9+
server.listen(0, function (err) {
1410
assert.ifError(err);
1511

12+
var connection = common.createConnection({
13+
port : server.port(),
14+
password : 'authswitch'
15+
});
16+
1617
connection.connect(function (err, result) {
1718
assert.ifError(err);
1819

test/unit/connection/test-auth-switch-unknown.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
1-
var assert = require('assert');
2-
var Buffer = require('safe-buffer').Buffer;
3-
var common = require('../../common');
4-
var connection = common.createConnection({
5-
port : common.fakeServerPort,
6-
password : 'authswitch'
7-
});
1+
var assert = require('assert');
2+
var Buffer = require('safe-buffer').Buffer;
3+
var common = require('../../common');
84

95
var server = common.createFakeServer();
106

11-
server.listen(common.fakeServerPort, function (err) {
7+
server.listen(0, function (err) {
128
assert.ifError(err);
139

10+
var connection = common.createConnection({
11+
port : server.port(),
12+
password : 'authswitch'
13+
});
14+
1415
connection.connect(function (err) {
1516
assert.ok(err);
1617
assert.equal(err.code, 'UNSUPPORTED_AUTH_METHOD');

test/unit/connection/test-callback-errors-are-not-caught.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({port: common.fakeServerPort});
1+
var assert = require('assert');
2+
var common = require('../../common');
43

54
var error = new Error('uncaught exception');
65
var server = common.createFakeServer();
76

8-
server.listen(common.fakeServerPort, function (err) {
7+
server.listen(0, function (err) {
98
assert.ifError(err);
109

11-
var caughtErr = null;
10+
var caughtErr = null;
11+
var connection = common.createConnection({port: server.port()});
1212

1313
connection.connect(function (err) {
1414
assert.ifError(err);

test/unit/connection/test-callback-primitive-errors-are-not-caught.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({port: common.fakeServerPort});
1+
var assert = require('assert');
2+
var common = require('../../common');
43

54
var error = undefined;
65
var server = common.createFakeServer();
76

8-
server.listen(common.fakeServerPort, function (err) {
7+
server.listen(0, function (err) {
98
assert.ifError(err);
109

11-
var caughtErr = null;
10+
var caughtErr = null;
11+
var connection = common.createConnection({port: server.port()});
1212

1313
connection.connect(function (err) {
1414
assert.ifError(err);

test/unit/connection/test-change-database-fatal-error.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,16 @@
33
// cause unexpected behavior for queries that were enqueued under the
44
// assumption of changeUser to succeed.
55

6-
var assert = require('assert');
7-
var common = require('../../common');
8-
var connection = common.createConnection({port: common.fakeServerPort});
6+
var assert = require('assert');
7+
var common = require('../../common');
98

109
var server = common.createFakeServer();
1110

12-
server.listen(common.fakeServerPort, function (err) {
11+
server.listen(0, function (err) {
1312
assert.ifError(err);
1413

14+
var connection = common.createConnection({port: server.port()});
15+
1516
connection.changeUser({database: 'does-not-exist'}, function (err) {
1617
assert.ok(err, 'got error');
1718
assert.equal(err.code, 'ER_BAD_DB_ERROR');

test/unit/connection/test-change-user-auth-switch-unknown.js

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
1-
var assert = require('assert');
2-
var Buffer = require('safe-buffer').Buffer;
3-
var common = require('../../common');
4-
var connection = common.createConnection({
5-
port : common.fakeServerPort,
6-
user : 'user_1',
7-
password : 'pass_1'
8-
});
1+
var assert = require('assert');
2+
var Buffer = require('safe-buffer').Buffer;
3+
var common = require('../../common');
94

105
var server = common.createFakeServer();
116

12-
server.listen(common.fakeServerPort, function(err) {
7+
server.listen(0, function(err) {
138
assert.ifError(err);
149

10+
var connection = common.createConnection({
11+
port : server.port(),
12+
user : 'user_1',
13+
password : 'pass_1'
14+
});
15+
1516
connection.query('SELECT CURRENT_USER()', function (err, result) {
1617
assert.ifError(err);
1718
assert.strictEqual(result[0]['CURRENT_USER()'], 'user_1@localhost');

test/unit/connection/test-change-user-auth-switch.js

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
1-
var assert = require('assert');
2-
var Crypto = require('crypto');
3-
var common = require('../../common');
4-
var connection = common.createConnection({
5-
port : common.fakeServerPort,
6-
user : 'user_1',
7-
password : 'pass_1'
8-
});
1+
var assert = require('assert');
2+
var Crypto = require('crypto');
3+
var common = require('../../common');
94

105
var random = Crypto.pseudoRandomBytes || Crypto.randomBytes; // Depends on node.js version
116
var server = common.createFakeServer();
127

13-
server.listen(common.fakeServerPort, function(err) {
8+
server.listen(0, function(err) {
149
assert.ifError(err);
1510

11+
var connection = common.createConnection({
12+
port : server.port(),
13+
user : 'user_1',
14+
password : 'pass_1'
15+
});
16+
1617
connection.query('SELECT CURRENT_USER()', function (err, result) {
1718
assert.ifError(err);
1819
assert.strictEqual(result[0]['CURRENT_USER()'], 'user_1@localhost');

test/unit/connection/test-change-user-before-connect.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({
4-
port : common.fakeServerPort,
5-
user : 'user_1'
6-
});
1+
var assert = require('assert');
2+
var common = require('../../common');
73

84
var server = common.createFakeServer();
95

10-
server.listen(common.fakeServerPort, function(err) {
6+
server.listen(0, function(err) {
117
assert.ifError(err);
8+
9+
var connection = common.createConnection({
10+
port : server.port(),
11+
user : 'user_1'
12+
});
13+
1214
assert.equal(connection.state, 'disconnected');
1315

1416
connection.changeUser({user: 'user_2'}, function (err) {

test/unit/connection/test-change-user-empty-queue.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({port: common.fakeServerPort});
1+
var assert = require('assert');
2+
var common = require('../../common');
43

54
var server = common.createFakeServer();
65

7-
server.listen(common.fakeServerPort, function (err) {
6+
server.listen(0, function (err) {
87
assert.ifError(err);
98

9+
var connection = common.createConnection({port: server.port()});
10+
1011
connection.query('SELECT 1', function (err, rows) {
1112
assert.ifError(err);
1213
assert.equal(rows.length, 1);

test/unit/connection/test-change-user-fatal-error.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,16 @@
33
// cause unexpected behavior for queries that were enqueued under the
44
// assumption of changeUser to succeed.
55

6-
var assert = require('assert');
7-
var common = require('../../common');
8-
var connection = common.createConnection({port: common.fakeServerPort});
6+
var assert = require('assert');
7+
var common = require('../../common');
98

109
var server = common.createFakeServer();
1110

12-
server.listen(common.fakeServerPort, function (err) {
11+
server.listen(0, function (err) {
1312
assert.ifError(err);
1413

14+
var connection = common.createConnection({port: server.port()});
15+
1516
connection.changeUser({user: 'does-not-exist', password: 'wrong-password'}, function (err) {
1617
assert.ok(err, 'got error');
1718
assert.equal(err.code, 'ER_ACCESS_DENIED_ERROR');

test/unit/connection/test-change-user-timeout.js

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
1-
var assert = require('assert');
2-
var common = require('../../common');
3-
var connection = common.createConnection({
4-
port : common.fakeServerPort,
5-
user : 'user_1'
6-
});
1+
var assert = require('assert');
2+
var common = require('../../common');
73

84
var timeout = setTimeout(function () {
95
throw new Error('test timeout');
106
}, 5000);
117

128
var server = common.createFakeServer();
139

14-
server.listen(common.fakeServerPort, function (err) {
10+
server.listen(0, function (err) {
1511
assert.ifError(err);
1612

13+
var connection = common.createConnection({
14+
port : server.port(),
15+
user : 'user_1'
16+
});
17+
1718
connection.query('SELECT CURRENT_USER()', function (err, result) {
1819
assert.ifError(err);
1920
assert.strictEqual(result[0]['CURRENT_USER()'], 'user_1@localhost');

0 commit comments

Comments
 (0)