Return-Path: X-Original-To: apmail-cordova-commits-archive@www.apache.org Delivered-To: apmail-cordova-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 411A01876E for ; Sat, 19 Mar 2016 00:56:50 +0000 (UTC) Received: (qmail 19229 invoked by uid 500); 19 Mar 2016 00:56:48 -0000 Delivered-To: apmail-cordova-commits-archive@cordova.apache.org Received: (qmail 19174 invoked by uid 500); 19 Mar 2016 00:56:48 -0000 Mailing-List: contact commits-help@cordova.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list commits@cordova.apache.org Received: (qmail 18557 invoked by uid 99); 19 Mar 2016 00:56:48 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 19 Mar 2016 00:56:48 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 76FFADFC55; Sat, 19 Mar 2016 00:56:48 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: steven@apache.org To: commits@cordova.apache.org Date: Sat, 19 Mar 2016 00:57:10 -0000 Message-Id: <8997ac19d2c24b9692da87fda7695c4e@git.apache.org> In-Reply-To: <68dc461ced264992b52e6c082ffbb9f4@git.apache.org> References: <68dc461ced264992b52e6c082ffbb9f4@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [23/37] cordova-lib git commit: CB-10791 Add adjustLoggerLevel to cordova-common.CordovaLogger CB-10791 Add adjustLoggerLevel to cordova-common.CordovaLogger Adds corresponding tests Project: http://git-wip-us.apache.org/repos/asf/cordova-lib/repo Commit: http://git-wip-us.apache.org/repos/asf/cordova-lib/commit/0386ac2c Tree: http://git-wip-us.apache.org/repos/asf/cordova-lib/tree/0386ac2c Diff: http://git-wip-us.apache.org/repos/asf/cordova-lib/diff/0386ac2c Branch: refs/heads/common-1.1.x Commit: 0386ac2cd76671001ce3d566148522cfd8de614a Parents: 317cfdb Author: daserge Authored: Wed Mar 9 22:20:01 2016 +0300 Committer: daserge Committed: Thu Mar 10 12:36:00 2016 +0300 ---------------------------------------------------------------------- cordova-common/spec/CordovaLogger.spec.js | 28 ++++++++++++++++++++++++++ cordova-common/src/CordovaLogger.js | 17 ++++++++++++++++ 2 files changed, 45 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/0386ac2c/cordova-common/spec/CordovaLogger.spec.js ---------------------------------------------------------------------- diff --git a/cordova-common/spec/CordovaLogger.spec.js b/cordova-common/spec/CordovaLogger.spec.js index fd96488..5c27db1 100644 --- a/cordova-common/spec/CordovaLogger.spec.js +++ b/cordova-common/spec/CordovaLogger.spec.js @@ -160,5 +160,33 @@ describe('CordovaLogger class', function() { expect(logger.stderrCursor.write.calls[0].args[0]).toBe('Error: error_message'); }); }); + + describe('adjustLevel method', function () { + it('should properly adjust log level', function () { + var resetLogLevel = function() { + logger.setLevel('normal'); + }; + + resetLogLevel(); + expect(logger.adjustLevel({verbose: true}).logLevel).toEqual('verbose'); + + resetLogLevel(); + expect(logger.adjustLevel(['--verbose']).logLevel).toEqual('verbose'); + + resetLogLevel(); + expect(logger.adjustLevel({silent: true}).logLevel).toEqual('error'); + + resetLogLevel(); + expect(logger.adjustLevel(['--silent']).logLevel).toEqual('error'); + + resetLogLevel(); + expect(logger.adjustLevel({verbose: true, silent: true}).logLevel).toEqual('verbose'); + + resetLogLevel(); + expect(logger.adjustLevel(['--verbose', '--silent']).logLevel).toEqual('verbose'); + + resetLogLevel(); + }); + }); }); }); http://git-wip-us.apache.org/repos/asf/cordova-lib/blob/0386ac2c/cordova-common/src/CordovaLogger.js ---------------------------------------------------------------------- diff --git a/cordova-common/src/CordovaLogger.js b/cordova-common/src/CordovaLogger.js index 38bfe69..0a4a49c 100644 --- a/cordova-common/src/CordovaLogger.js +++ b/cordova-common/src/CordovaLogger.js @@ -153,6 +153,23 @@ CordovaLogger.prototype.setLevel = function (logLevel) { }; /** + * Adjusts the current logger level according to the passed options. + * + * @param {Object|Array} opts An object or args array with options + * + * @return {CordovaLogger} Current instance, to allow calls chaining. + */ +CordovaLogger.prototype.adjustLevel = function (opts) { + if (opts.verbose || (Array.isArray(opts) && opts.indexOf('--verbose') !== -1)) { + this.setLevel('verbose'); + } else if (opts.silent || (Array.isArray(opts) && opts.indexOf('--silent') !== -1)) { + this.setLevel('error'); + } + + return this; +}; + +/** * Attaches logger to EventEmitter instance provided. * * @param {EventEmitter} eventEmitter An EventEmitter instance to attach --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org For additional commands, e-mail: commits-help@cordova.apache.org