1- import { extensions } from 'vscode'
2- // eslint-disable-next-line import/default
31import TelemetryReporter from '@vscode/extension-telemetry'
42import { getTelemetryReporter , sendTelemetryEvent } from '.'
53import {
64 APPLICATION_INSIGHTS_KEY ,
7- EXTENSION_ID ,
85 IEventNamePropertyMapping
96} from './constants'
107import { getUserId } from './uuid'
118
129const mockedTelemetryReporter = jest . mocked ( TelemetryReporter )
1310
14- const mockedExtensions = jest . mocked ( extensions )
15- const mockedGetExtension = jest . fn ( )
16- mockedExtensions . getExtension = mockedGetExtension
17- const mockedPackageJSON = {
18- id : EXTENSION_ID ,
19- name : 'dvc' ,
20- version : '0.1.0'
21- }
2211const mockedSendTelemetryEvent = jest . fn ( )
2312const mockedGetUserId = jest . mocked ( getUserId )
2413
@@ -46,20 +35,12 @@ describe('getTelemetryReporter', () => {
4635 let telemetryReporter : TelemetryReporter | undefined
4736
4837 it ( 'should create a reporter on the first call' , ( ) => {
49- mockedGetExtension . mockReturnValueOnce ( {
50- packageJSON : mockedPackageJSON
51- } )
5238 telemetryReporter = getTelemetryReporter ( )
5339
5440 expect ( telemetryReporter ) . toBeDefined ( )
55- expect ( mockedGetExtension ) . toHaveBeenCalledTimes ( 1 )
56- expect ( mockedGetExtension ) . toHaveBeenCalledWith ( 'iterative.dvc' )
5741 expect ( mockedTelemetryReporter ) . toHaveBeenCalledTimes ( 1 )
5842 expect ( mockedTelemetryReporter ) . toHaveBeenCalledWith (
59- EXTENSION_ID ,
60- mockedPackageJSON . version ,
61- APPLICATION_INSIGHTS_KEY ,
62- true
43+ APPLICATION_INSIGHTS_KEY
6344 )
6445 } )
6546
@@ -68,7 +49,6 @@ describe('getTelemetryReporter', () => {
6849
6950 expect ( telemetryReporter ) . toStrictEqual ( sameTelemetryReporter )
7051 expect ( mockedTelemetryReporter ) . not . toHaveBeenCalled ( )
71- expect ( mockedGetExtension ) . not . toHaveBeenCalled ( )
7252 } )
7353} )
7454
0 commit comments