From b687581d0eb4acc62eb4e9ca8dca51b8b11e7057 Mon Sep 17 00:00:00 2001 From: brianc Date: Sat, 23 Oct 2010 18:52:01 -0500 Subject: [PATCH] test for parsing password request messages --- test/unit/connection/inbound-parser-tests.js | 18 ++++++++++++++++++ test/unit/test-buffers.js | 13 +++++++++++++ 2 files changed, 31 insertions(+) diff --git a/test/unit/connection/inbound-parser-tests.js b/test/unit/connection/inbound-parser-tests.js index 23dfa927..a90cadc1 100644 --- a/test/unit/connection/inbound-parser-tests.js +++ b/test/unit/connection/inbound-parser-tests.js @@ -140,8 +140,26 @@ var testForMessage = function(buffer, expectedMessage) { return lastMessage; }; +var plainPasswordBuffer = buffers.authenticationCleartextPassword(); +var md5PasswordBuffer = buffers.authenticationMD5Password(); + +var expectedPlainPasswordMessage = { + id: 'R', + name: 'authenticationCleartextPassword' +}; + +var expectedMD5PasswordMessage = { + id: 'R', + name: 'authenticationMD5Password' +}; + test('Connection', function() { testForMessage(authOkBuffer, expectedAuthenticationOkayMessage); + testForMessage(plainPasswordBuffer, expectedPlainPasswordMessage); + var msg = testForMessage(md5PasswordBuffer, expectedMD5PasswordMessage); + test('md5 has right salt', function() { + assert.equalBuffers(msg.salt, Buffer([1,2,3,4])); + }); testForMessage(paramStatusBuffer, expectedParameterStatusMessage); testForMessage(backendKeyDataBuffer, expectedBackendKeyDataMessage); testForMessage(readyForQueryBuffer, expectedReadyForQueryMessage); diff --git a/test/unit/test-buffers.js b/test/unit/test-buffers.js index ae9c9db2..53b23eff 100644 --- a/test/unit/test-buffers.js +++ b/test/unit/test-buffers.js @@ -14,6 +14,19 @@ buffers.authenticationOk = function() { .join(true, 'R'); }; +buffers.authenticationCleartextPassword = function() { + return new BufferList() + .addInt32(3) + .join(true, 'R'); +}; + +buffers.authenticationMD5Password = function() { + return new BufferList() + .addInt32(5) + .add(Buffer([1,2,3,4])) + .join(true, 'R'); +}; + buffers.parameterStatus = function(name, value) { return new BufferList() .addCString(name)