From caebbc2ca147dd22ff0f9a68214e6518093c270c Mon Sep 17 00:00:00 2001 From: ciaranj Date: Sun, 5 Dec 2010 21:52:50 +0000 Subject: [PATCH] Fixed the parameter ordering, and added support for repeated arguments. Fixes issue 14 --- lib/oauth.js | 40 ++++++++++++++++++++++++++------- tests/oauth.js | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+), 8 deletions(-) diff --git a/lib/oauth.js b/lib/oauth.js index f6ac0bd..d258f52 100644 --- a/lib/oauth.js +++ b/lib/oauth.js @@ -95,12 +95,26 @@ exports.OAuth.prototype._buildAuthorizationHeaders= function(orderedParameters) return authHeader; } -// Takes a literal in, then returns a sorted array -exports.OAuth.prototype._sortRequestParams= function(argumentsHash) { +// Takes an object literal that represents the arguments, and returns an array +// of argument/value pairs. +exports.OAuth.prototype._makeArrayOfArgumentsHash= function(argumentsHash) { var argument_pairs= []; - for(var key in argumentsHash ) { - argument_pairs[argument_pairs.length]= [key, argumentsHash[key]]; + for(var key in argumentsHash ) { + var value= argumentsHash[key]; + if( Array.isArray(value) ) { + for(var i=0;i