@@ -3,6 +3,7 @@ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
33describe ( 'config utilities' , ( ) => {
44 let getUserAgent : any ;
55 let originalToken : string | undefined ; // Preserve any real token injected by CI so we can restore it later.
6+ let packageVersion : string ;
67
78 beforeEach ( async ( ) => {
89 vi . resetModules ( ) ;
@@ -11,11 +12,8 @@ describe('config utilities', () => {
1112 if ( originalToken === undefined ) {
1213 process . env . ROLLBAR_ACCESS_TOKEN = 'test-token' ;
1314 }
14-
15- // Mock the package.json import
16- vi . doMock ( '../../src/package.json' , ( ) => ( {
17- version : '0.2.3'
18- } ) ) ;
15+ const packageJsonModule = await import ( '../../package.json' , { with : { type : 'json' } } ) ;
16+ packageVersion = packageJsonModule . default . version ;
1917
2018 const configModule = await import ( '../../src/config.js' ) ;
2119 getUserAgent = configModule . getUserAgent ;
@@ -33,23 +31,23 @@ describe('config utilities', () => {
3331 describe ( 'getUserAgent' , ( ) => {
3432 it ( 'should generate correct user agent string with tool name' , ( ) => {
3533 const userAgent = getUserAgent ( 'get-item-details' ) ;
36- expect ( userAgent ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: get-item-details)' ) ;
34+ expect ( userAgent ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: get-item-details)` ) ;
3735 } ) ;
3836
3937 it ( 'should handle different tool names' , ( ) => {
40- expect ( getUserAgent ( 'list-items' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: list-items)' ) ;
41- expect ( getUserAgent ( 'update-item' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: update-item)' ) ;
42- expect ( getUserAgent ( 'get-version' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: get-version)' ) ;
43- expect ( getUserAgent ( 'get-deployments' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: get-deployments)' ) ;
44- expect ( getUserAgent ( 'get-top-items' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: get-top-items)' ) ;
38+ expect ( getUserAgent ( 'list-items' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: list-items)` ) ;
39+ expect ( getUserAgent ( 'update-item' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: update-item)` ) ;
40+ expect ( getUserAgent ( 'get-version' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: get-version)` ) ;
41+ expect ( getUserAgent ( 'get-deployments' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: get-deployments)` ) ;
42+ expect ( getUserAgent ( 'get-top-items' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: get-top-items)` ) ;
4543 } ) ;
4644
4745 it ( 'should handle tool names with special characters' , ( ) => {
48- expect ( getUserAgent ( 'custom-tool-123' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: custom-tool-123)' ) ;
46+ expect ( getUserAgent ( 'custom-tool-123' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: custom-tool-123)` ) ;
4947 } ) ;
5048
5149 it ( 'should handle empty string tool name' , ( ) => {
52- expect ( getUserAgent ( '' ) ) . toBe ( ' rollbar-mcp-server/0.2.3 (tool: )' ) ;
50+ expect ( getUserAgent ( '' ) ) . toBe ( ` rollbar-mcp-server/${ packageVersion } (tool: )` ) ;
5351 } ) ;
5452 } ) ;
5553} ) ;
0 commit comments