@@ -5800,7 +5800,7 @@ def cleanup():
58005800
58015801 self .addCleanup (cleanup )
58025802 self .addCleanup (logging .shutdown )
5803- self .adapter = logging .LoggerAdapter (logger = self .logger , extra = None )
5803+ self .adapter = logging .LoggerAdapter (logger = self .logger )
58045804
58055805 def test_exception (self ):
58065806 msg = 'testing exception: %r'
@@ -5971,6 +5971,18 @@ def test_extra_merged(self):
59715971 self .assertEqual (record .foo , '1' )
59725972 self .assertEqual (record .bar , '2' )
59735973
5974+ self .adapter .critical ('no extra' ) # should not fail
5975+ self .assertEqual (len (self .recording .records ), 2 )
5976+ record = self .recording .records [- 1 ]
5977+ self .assertEqual (record .foo , '1' )
5978+ self .assertNotHasAttr (record , 'bar' )
5979+
5980+ self .adapter .critical ('none extra' , extra = None ) # should not fail
5981+ self .assertEqual (len (self .recording .records ), 3 )
5982+ record = self .recording .records [- 1 ]
5983+ self .assertEqual (record .foo , '1' )
5984+ self .assertNotHasAttr (record , 'bar' )
5985+
59745986 def test_extra_merged_log_call_has_precedence (self ):
59755987 self .adapter = logging .LoggerAdapter (logger = self .logger ,
59765988 extra = {'foo' : '1' },
@@ -5982,6 +5994,25 @@ def test_extra_merged_log_call_has_precedence(self):
59825994 self .assertHasAttr (record , 'foo' )
59835995 self .assertEqual (record .foo , '2' )
59845996
5997+ def test_extra_merged_without_extra (self ):
5998+ self .adapter = logging .LoggerAdapter (logger = self .logger ,
5999+ merge_extra = True )
6000+
6001+ self .adapter .critical ('foo should be here' , extra = {'foo' : '1' })
6002+ self .assertEqual (len (self .recording .records ), 1 )
6003+ record = self .recording .records [- 1 ]
6004+ self .assertEqual (record .foo , '1' )
6005+
6006+ self .adapter .critical ('no extra' ) # should not fail
6007+ self .assertEqual (len (self .recording .records ), 2 )
6008+ record = self .recording .records [- 1 ]
6009+ self .assertNotHasAttr (record , 'foo' )
6010+
6011+ self .adapter .critical ('none extra' , extra = None ) # should not fail
6012+ self .assertEqual (len (self .recording .records ), 3 )
6013+ record = self .recording .records [- 1 ]
6014+ self .assertNotHasAttr (record , 'foo' )
6015+
59856016
59866017class PrefixAdapter (logging .LoggerAdapter ):
59876018 prefix = 'Adapter'
0 commit comments