@@ -130,6 +130,39 @@ describe('recommendationHandler', function () {
130
130
codewhispererLanguage : 'python' ,
131
131
} )
132
132
} )
133
+
134
+ it ( 'should call telemetry function that records a Empty userDecision event' , async function ( ) {
135
+ const mockServerResult = {
136
+ recommendations : [ ] ,
137
+ nextToken : '' ,
138
+ $response : {
139
+ requestId : 'test_request_empty' ,
140
+ httpResponse : {
141
+ headers : {
142
+ 'x-amzn-sessionid' : 'test_request_empty' ,
143
+ } ,
144
+ } ,
145
+ } ,
146
+ }
147
+ const handler = new RecommendationHandler ( )
148
+ sinon . stub ( handler , 'getServerResponse' ) . resolves ( mockServerResult )
149
+ sinon . stub ( performance , 'now' ) . returns ( 0.0 )
150
+ handler . startPos = new vscode . Position ( 1 , 0 )
151
+ TelemetryHelper . instance . cursorOffset = 2
152
+ await handler . getRecommendations ( mockClient , mockEditor , 'AutoTrigger' , config , 'Enter' )
153
+ const assertTelemetry = assertTelemetryCurried ( 'codewhisperer_userDecision' )
154
+ assertTelemetry ( {
155
+ codewhispererRequestId : 'test_request_empty' ,
156
+ codewhispererSessionId : 'test_request_empty' ,
157
+ codewhispererPaginationProgress : 0 ,
158
+ codewhispererTriggerType : 'AutoTrigger' ,
159
+ codewhispererSuggestionIndex : - 1 ,
160
+ codewhispererSuggestionState : 'Empty' ,
161
+ codewhispererSuggestionReferenceCount : 0 ,
162
+ codewhispererCompletionType : 'Line' ,
163
+ codewhispererLanguage : 'python' ,
164
+ } )
165
+ } )
133
166
} )
134
167
135
168
describe ( 'isValidResponse' , function ( ) {
0 commit comments