55import { should , expect } from 'chai' ;
66import { TelemetryObserver } from '../../../src/observers/TelemetryObserver' ;
77import { PlatformInformation } from '../../../src/platform' ;
8- import { PackageInstallation , InstallationFailure , InstallationSuccess , TestExecutionCountReport , TelemetryEventWithMeasures , OmnisharpDelayTrackerEventMeasures , OmnisharpStart } from '../../../src/omnisharp/loggingEvents' ;
8+ import { PackageInstallation , InstallationFailure , InstallationSuccess , TestExecutionCountReport , TelemetryEventWithMeasures , OmnisharpDelayTrackerEventMeasures , OmnisharpStart , TelemetryEvent } from '../../../src/omnisharp/loggingEvents' ;
99import { getNullTelemetryReporter } from '../testAssets/Fakes' ;
1010import { Package } from '../../../src/packageManager/Package' ;
1111import { PackageError } from '../../../src/packageManager/PackageError' ;
@@ -60,6 +60,14 @@ suite('TelemetryReporterObserver', () => {
6060 } ) ;
6161 } ) ;
6262
63+ test ( `${ TelemetryEvent . name } : SendTelemetry event is called with the name, properties and measures` , ( ) => {
64+ let event = new TelemetryEvent ( "someName" , { "key" : "value" } , { someKey : 1 } ) ;
65+ observer . post ( event ) ;
66+ expect ( name ) . to . contain ( event . eventName ) ;
67+ expect ( measure ) . to . be . containingAllOf ( [ event . measures ] ) ;
68+ expect ( property ) . to . be . equal ( event . properties ) ;
69+ } ) ;
70+
6371 suite ( 'InstallationFailure' , ( ) => {
6472 test ( "Telemetry Props contains platform information, install stage and an event name" , ( ) => {
6573 let event = new InstallationFailure ( "someStage" , "someError" ) ;
@@ -69,7 +77,7 @@ suite('TelemetryReporterObserver', () => {
6977 expect ( property ) . to . have . property ( "installStage" ) ;
7078 expect ( name ) . to . not . be . empty ;
7179 } ) ;
72-
80+
7381 test ( `Telemetry Props contains message and packageUrl if error is package error` , ( ) => {
7482 let error = new PackageError ( "someError" , < Package > { "description" : "foo" , "url" : "someurl" } ) ;
7583 let event = new InstallationFailure ( "someStage" , error ) ;
0 commit comments