1- import { afterEach , describe , mock , test } from 'node:test' ;
1+ import { after , afterEach , before , describe , mock , test } from 'node:test' ;
22import assert from 'node:assert' ;
33import { DefaultUsageDataEmitter } from './usage_data_emitter' ;
44import { v4 , validate } from 'uuid' ;
@@ -12,6 +12,9 @@ import { UsageData } from './usage_data';
1212import isCI from 'is-ci' ;
1313import { AmplifyError , AmplifyUserError } from '..' ;
1414
15+ const originalNpmUserAgent = process . env . npm_config_user_agent ;
16+ const testNpmUserAgent = 'testNpmUserAgent' ;
17+
1518void describe ( 'UsageDataEmitter' , ( ) => {
1619 let usageDataEmitter : DefaultUsageDataEmitter ;
1720
@@ -39,6 +42,14 @@ void describe('UsageDataEmitter', () => {
3942
4043 mock . method ( https , 'request' , ( ) => reqMock ) ;
4144
45+ before ( ( ) => {
46+ process . env . npm_config_user_agent = testNpmUserAgent ;
47+ } ) ;
48+
49+ after ( ( ) => {
50+ process . env . npm_config_user_agent = originalNpmUserAgent ;
51+ } ) ;
52+
4253 afterEach ( ( ) => {
4354 onReqEndMock . mock . resetCalls ( ) ;
4455 onReqEndMock . mock . restore ( ) ;
@@ -72,6 +83,10 @@ void describe('UsageDataEmitter', () => {
7283 assert . deepStrictEqual ( usageDataSent . isCi , isCI ) ;
7384 assert . deepStrictEqual ( usageDataSent . osPlatform , os . platform ( ) ) ;
7485 assert . deepStrictEqual ( usageDataSent . osRelease , os . release ( ) ) ;
86+ assert . deepStrictEqual (
87+ usageDataSent . projectSetting . editor ,
88+ testNpmUserAgent
89+ ) ;
7590 assert . ok ( validate ( usageDataSent . sessionUuid ) ) ;
7691 assert . ok ( validate ( usageDataSent . installationUuid ) ) ;
7792 assert . ok ( usageDataSent . error == undefined ) ;
@@ -105,6 +120,10 @@ void describe('UsageDataEmitter', () => {
105120 assert . deepStrictEqual ( usageDataSent . isCi , isCI ) ;
106121 assert . deepStrictEqual ( usageDataSent . osPlatform , os . platform ( ) ) ;
107122 assert . deepStrictEqual ( usageDataSent . osRelease , os . release ( ) ) ;
123+ assert . deepStrictEqual (
124+ usageDataSent . projectSetting . editor ,
125+ testNpmUserAgent
126+ ) ;
108127 assert . ok ( validate ( usageDataSent . sessionUuid ) ) ;
109128 assert . ok ( validate ( usageDataSent . installationUuid ) ) ;
110129 assert . strictEqual ( usageDataSent . error ?. message , 'some error message' ) ;
0 commit comments