@@ -326,14 +326,40 @@ describe('Log', function() {
326326
327327 describe ( 'write' , function ( ) {
328328 var ENTRY = { } ;
329- var OPTIONS = {
330- resource : { }
331- } ;
329+ var OPTIONS = { } ;
330+ var FAKE_RESOURCE = 'fake-resource' ;
332331
333332 beforeEach ( function ( ) {
334- log . decorateEntries_ = function ( entries , callback ) {
335- callback ( null , entries ) ;
333+ log . decorateEntries_ = function ( entries ) {
334+ return entries ;
335+ } ;
336+ log . metadata_ . getDefaultResource = function ( callback ) {
337+ callback ( null , FAKE_RESOURCE ) ;
338+ } ;
339+ } ) ;
340+
341+ it ( 'should forward options.resource to request' , function ( done ) {
342+ var CUSTOM_RESOURCE = 'custom-resource' ;
343+ var optionsWithResource = extend ( { } , OPTIONS , {
344+ resource : CUSTOM_RESOURCE
345+ } ) ;
346+
347+ log . logging . request = function ( config , callback ) {
348+ assert . strictEqual ( config . client , 'loggingServiceV2Client' ) ;
349+ assert . strictEqual ( config . method , 'writeLogEntries' ) ;
350+
351+ assert . deepEqual ( config . reqOpts , {
352+ logName : log . formattedName_ ,
353+ entries : [ ENTRY ] ,
354+ resource : CUSTOM_RESOURCE
355+ } ) ;
356+
357+ assert . strictEqual ( config . gaxOpts , undefined ) ;
358+
359+ callback ( ) ;
336360 } ;
361+
362+ log . write ( ENTRY , optionsWithResource , done ) ;
337363 } ) ;
338364
339365 it ( 'should make the correct API request' , function ( done ) {
@@ -344,7 +370,7 @@ describe('Log', function() {
344370 assert . deepEqual ( config . reqOpts , {
345371 logName : log . formattedName_ ,
346372 entries : [ ENTRY ] ,
347- resource : { }
373+ resource : FAKE_RESOURCE
348374 } ) ;
349375
350376 assert . strictEqual ( config . gaxOpts , undefined ) ;
@@ -358,9 +384,9 @@ describe('Log', function() {
358384 it ( 'should arrify & decorate the entries' , function ( done ) {
359385 var decoratedEntries = [ ] ;
360386
361- log . decorateEntries_ = function ( entries , callback ) {
387+ log . decorateEntries_ = function ( entries ) {
362388 assert . strictEqual ( entries [ 0 ] , ENTRY ) ;
363- callback ( null , decoratedEntries ) ;
389+ return decoratedEntries ;
364390 } ;
365391
366392 log . logging . request = function ( config ) {
@@ -639,36 +665,30 @@ describe('Log', function() {
639665 } ;
640666 } ) ;
641667
642- it ( 'should create an Entry object if one is not provided' , function ( done ) {
668+ it ( 'should create an Entry object if one is not provided' , function ( ) {
643669 var entry = { } ;
644670
645671 log . entry = function ( entry_ ) {
646672 assert . strictEqual ( entry_ , entry ) ;
647673 return new FakeEntry ( ) ;
648674 } ;
649675
650- log . decorateEntries_ ( [ entry ] , function ( err , decoratedEntries ) {
651- assert . ifError ( err ) ;
652- assert . strictEqual ( decoratedEntries [ 0 ] , toJSONResponse ) ;
653- done ( ) ;
654- } ) ;
676+ var decoratedEntries = log . decorateEntries_ ( [ entry ] ) ;
677+ assert . strictEqual ( decoratedEntries [ 0 ] , toJSONResponse ) ;
655678 } ) ;
656679
657- it ( 'should get JSON format from Entry object' , function ( done ) {
680+ it ( 'should get JSON format from Entry object' , function ( ) {
658681 log . entry = function ( ) {
659- done ( ) ; // will result in multiple done() calls and fail the test.
682+ throw new Error ( 'should not be called' ) ;
660683 } ;
661684
662685 var entry = new Entry ( ) ;
663686 entry . toJSON = function ( ) {
664687 return toJSONResponse ;
665688 } ;
666689
667- log . decorateEntries_ ( [ entry ] , function ( err , decoratedEntries ) {
668- assert . ifError ( err ) ;
669- assert . strictEqual ( decoratedEntries [ 0 ] , toJSONResponse ) ;
670- done ( ) ;
671- } ) ;
690+ var decoratedEntries = log . decorateEntries_ ( [ entry ] ) ;
691+ assert . strictEqual ( decoratedEntries [ 0 ] , toJSONResponse ) ;
672692 } ) ;
673693
674694 it ( 'should pass log.removeCircular to toJSON' , function ( done ) {
@@ -681,59 +701,22 @@ describe('Log', function() {
681701 return { } ;
682702 } ;
683703
684- log . decorateEntries_ ( [ entry ] , assert . ifError ) ;
704+ log . decorateEntries_ ( [ entry ] ) ;
685705 } ) ;
686706
687- it ( 'should exec callback with error from serialization' , function ( done ) {
707+ it ( 'should throw error from serialization' , function ( ) {
688708 var error = new Error ( 'Error.' ) ;
689709
690710 var entry = new Entry ( ) ;
691711 entry . toJSON = function ( ) {
692712 throw error ;
693713 } ;
694714
695- log . decorateEntries_ ( [ entry ] , function ( err ) {
715+ try {
716+ log . decorateEntries_ ( [ entry ] ) ;
717+ } catch ( err ) {
696718 assert . strictEqual ( err , error ) ;
697- done ( ) ;
698- } ) ;
699- } ) ;
700-
701- it ( 'should return extended entry with default resource' , function ( done ) {
702- var entry = new FakeEntry ( ) ;
703- entry . toJSON = function ( ) {
704- return toJSONResponse ;
705- } ;
706-
707- var entryWithDefaultResource = { } ;
708-
709- log . metadata_ . assignDefaultResource = function ( entryJson , callback ) {
710- assert . strictEqual ( entryJson , toJSONResponse ) ;
711- callback ( null , entryWithDefaultResource ) ;
712- } ;
713-
714- log . decorateEntries_ ( [ entry ] , function ( err , decoratedEntries ) {
715- assert . ifError ( err ) ;
716- assert . strictEqual ( decoratedEntries [ 0 ] , entryWithDefaultResource ) ;
717- done ( ) ;
718- } ) ;
719- } ) ;
720-
721- it ( 'should return original entry without resource' , function ( done ) {
722- var entry = new Entry ( ) ;
723- entry . toJSON = function ( ) {
724- return toJSONResponse ;
725- } ;
726-
727- log . metadata_ . assignDefaultResource = function ( entryJson , callback ) {
728- assert . strictEqual ( entryJson , toJSONResponse ) ;
729- callback ( ) ;
730- } ;
731-
732- log . decorateEntries_ ( [ entry ] , function ( err , decoratedEntries ) {
733- assert . ifError ( err ) ;
734- assert . strictEqual ( decoratedEntries [ 0 ] , toJSONResponse ) ;
735- done ( ) ;
736- } ) ;
719+ }
737720 } ) ;
738721 } ) ;
739722} ) ;
0 commit comments