@@ -34,6 +34,53 @@ def test_ctor(self):
3434 self .assertEqual (logger .name , self .LOGGER_NAME )
3535 self .assertTrue (logger .client is client )
3636 self .assertEqual (logger .project , self .PROJECT )
37+ self .assertEqual (logger .full_name , 'projects/%s/logs/%s'
38+ % (self .PROJECT , self .LOGGER_NAME ))
39+
40+ def test_log_text_w_str_implicit_client (self ):
41+ TEXT = 'TEXT'
42+ conn = _Connection ({})
43+ client = _Client (self .PROJECT , conn )
44+ logger = self ._makeOne (self .LOGGER_NAME , client = client )
45+ logger .log_text (TEXT )
46+ self .assertEqual (len (conn ._requested ), 1 )
47+ req = conn ._requested [0 ]
48+ SENT = {
49+ 'entries' : [{
50+ 'logName' : 'projects/%s/logs/%s' % (
51+ self .PROJECT , self .LOGGER_NAME ),
52+ 'textPayload' : TEXT ,
53+ 'resource' : {
54+ 'type' : 'global' ,
55+ },
56+ }],
57+ }
58+ self .assertEqual (req ['method' ], 'POST' )
59+ self .assertEqual (req ['path' ], '/entries:write' )
60+ self .assertEqual (req ['data' ], SENT )
61+
62+ def test_log_text_w_unicode_explicit_client (self ):
63+ TEXT = u'TEXT'
64+ conn = _Connection ({})
65+ client1 = _Client (self .PROJECT , object ())
66+ client2 = _Client (self .PROJECT , conn )
67+ logger = self ._makeOne (self .LOGGER_NAME , client = client1 )
68+ logger .log_text (TEXT , client = client2 )
69+ self .assertEqual (len (conn ._requested ), 1 )
70+ req = conn ._requested [0 ]
71+ SENT = {
72+ 'entries' : [{
73+ 'logName' : 'projects/%s/logs/%s' % (
74+ self .PROJECT , self .LOGGER_NAME ),
75+ 'textPayload' : TEXT ,
76+ 'resource' : {
77+ 'type' : 'global' ,
78+ },
79+ }],
80+ }
81+ self .assertEqual (req ['method' ], 'POST' )
82+ self .assertEqual (req ['path' ], '/entries:write' )
83+ self .assertEqual (req ['data' ], SENT )
3784
3885
3986class _Connection (object ):
@@ -42,6 +89,11 @@ def __init__(self, *responses):
4289 self ._responses = responses
4390 self ._requested = []
4491
92+ def api_request (self , ** kw ):
93+ self ._requested .append (kw )
94+ response , self ._responses = self ._responses [0 ], self ._responses [1 :]
95+ return response
96+
4597
4698class _Client (object ):
4799
0 commit comments