From edbd37e82e32c700178fd7f56c42085860dfcbb9 Mon Sep 17 00:00:00 2001 From: Ali Ijaz Sheikh Date: Fri, 3 Mar 2017 07:32:39 -0800 Subject: [PATCH 1/4] assignSeverityToEntries: add test for circular objects --- packages/logging/test/log.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/logging/test/log.js b/packages/logging/test/log.js index 274bac2920f..45c7e0b39c5 100644 --- a/packages/logging/test/log.js +++ b/packages/logging/test/log.js @@ -142,9 +142,13 @@ describe('Log', function() { }); describe('assignSeverityToEntries_', function() { + var circular = {}; + circular.circular = circular; + var ENTRIES = [ { data: { a: 'b' } }, - { data: { c: 'd' } } + { data: { c: 'd' } }, + { data: { e: circular }} ]; var SEVERITY = 'severity'; @@ -164,6 +168,7 @@ describe('Log', function() { .map(prop('metadata')) .map(prop('severity')), [ + SEVERITY, SEVERITY, SEVERITY ] From 674803a475c07213c8589dd535449360e1d4cfb1 Mon Sep 17 00:00:00 2001 From: Ali Ijaz Sheikh Date: Fri, 3 Mar 2017 07:25:29 -0800 Subject: [PATCH 2/4] assignSeverityToEntries: no need for a deep clone --- packages/logging/src/log.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/logging/src/log.js b/packages/logging/src/log.js index e20f4634052..08c9855d72f 100644 --- a/packages/logging/src/log.js +++ b/packages/logging/src/log.js @@ -118,11 +118,10 @@ util.inherits(Log, commonGrpc.ServiceObject); */ Log.assignSeverityToEntries_ = function(entries, severity) { return arrify(entries).map(function(entry) { - return extend(true, new Entry(), entry, { - metadata: { - severity: severity - } - }); + var entry = extend(new Entry(), entry); + entry.metadata = entry.metadata || {}; + entry.metadata.severity = severity; + return entry; }); }; From 206f0a39fedc688143eb0c477a20d460ec7a22b2 Mon Sep 17 00:00:00 2001 From: Ali Ijaz Sheikh Date: Fri, 3 Mar 2017 07:42:36 -0800 Subject: [PATCH 3/4] clone metadata properly --- packages/logging/src/log.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/logging/src/log.js b/packages/logging/src/log.js index 08c9855d72f..f92ba2840b7 100644 --- a/packages/logging/src/log.js +++ b/packages/logging/src/log.js @@ -118,10 +118,8 @@ util.inherits(Log, commonGrpc.ServiceObject); */ Log.assignSeverityToEntries_ = function(entries, severity) { return arrify(entries).map(function(entry) { - var entry = extend(new Entry(), entry); - entry.metadata = entry.metadata || {}; - entry.metadata.severity = severity; - return entry; + var metadata = extend(true, {}, entry.metadata, { severity: severity }); + return extend(new Entry(), entry, {metadata: metadata }); }); }; From a97ce4ccc269740c53bbe40c389b8755b2eea953 Mon Sep 17 00:00:00 2001 From: Stephen Sawchuk Date: Fri, 3 Mar 2017 10:48:14 -0500 Subject: [PATCH 4/4] style tweaks --- packages/logging/src/log.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/logging/src/log.js b/packages/logging/src/log.js index f92ba2840b7..760796ca6e6 100644 --- a/packages/logging/src/log.js +++ b/packages/logging/src/log.js @@ -118,8 +118,13 @@ util.inherits(Log, commonGrpc.ServiceObject); */ Log.assignSeverityToEntries_ = function(entries, severity) { return arrify(entries).map(function(entry) { - var metadata = extend(true, {}, entry.metadata, { severity: severity }); - return extend(new Entry(), entry, {metadata: metadata }); + var metadata = extend(true, {}, entry.metadata, { + severity: severity + }); + + return extend(new Entry(), entry, { + metadata: metadata + }); }); };