44 */
55import assert from 'assert'
66import { WorkspaceFolder } from 'vscode'
7- import { getEqualOptions , performanceTest } from '../../shared/performance/performance'
7+ import { performanceTest } from '../../shared/performance/performance'
88import { createTestWorkspace } from '../testUtil'
99import { prepareRepoData , TelemetryHelper } from '../../amazonqFeatureDev'
1010import { AmazonqCreateUpload , getRandomString , Metric } from '../../shared'
@@ -22,45 +22,88 @@ describe('prepareRepoDataPerformanceTest', function () {
2222 assert . strictEqual ( result . zipFileChecksum . length , 44 )
2323 }
2424
25- performanceTest ( getEqualOptions ( 10 , 80 , 8 , 0.7 ) , 'handles many files' , function ( ) {
26- const telemetry = new TelemetryHelper ( )
27- let workspace : WorkspaceFolder
28- let result : resultType
29- return {
30- setup : async ( ) => {
31- workspace = await createTestWorkspace ( 1000 , {
32- fileNamePrefix : 'file' ,
33- fileContent : '0123456789' ,
34- fileNameSuffix : '.md' ,
35- } )
25+ performanceTest (
26+ {
27+ testRuns : 10 ,
28+ linux : {
29+ userCpuUsage : 80 ,
30+ heapTotal : 8 ,
31+ duration : 1.0 ,
3632 } ,
37- execute : async ( ) => {
38- result = await prepareRepoData ( [ workspace . uri . fsPath ] , [ workspace ] , telemetry , {
39- record : ( ) => { } ,
40- } as unknown as Metric < AmazonqCreateUpload > )
33+ darwin : {
34+ userCpuUsage : 80 ,
35+ heapTotal : 8 ,
36+ duration : 1.0 ,
4137 } ,
42- verify : async ( ) => verifyResult ( result , telemetry , 10000 ) ,
38+ win32 : {
39+ userCpuUsage : 80 ,
40+ heapTotal : 8 ,
41+ duration : 3 ,
42+ } ,
43+ } ,
44+ 'handles many files' ,
45+ function ( ) {
46+ const telemetry = new TelemetryHelper ( )
47+ let workspace : WorkspaceFolder
48+ let result : resultType
49+ return {
50+ setup : async ( ) => {
51+ workspace = await createTestWorkspace ( 500 , {
52+ fileNamePrefix : 'file' ,
53+ fileContent : '0123456789' ,
54+ fileNameSuffix : '.md' ,
55+ } )
56+ } ,
57+ execute : async ( ) => {
58+ result = await prepareRepoData ( [ workspace . uri . fsPath ] , [ workspace ] , telemetry , {
59+ record : ( ) => { } ,
60+ } as unknown as Metric < AmazonqCreateUpload > )
61+ } ,
62+ verify : async ( ) => verifyResult ( result , telemetry , 5000 ) ,
63+ }
4364 }
44- } )
65+ )
4566
46- performanceTest ( getEqualOptions ( 10 , 30 , 1 , 0.1 ) , 'handles large files' , function ( ) {
47- const telemetry = new TelemetryHelper ( )
48- let result : resultType
49- let workspace : WorkspaceFolder
50- return {
51- setup : async ( ) => {
52- workspace = await createTestWorkspace ( 10 , {
53- fileNamePrefix : 'file' ,
54- fileContent : getRandomString ( 1000 ) ,
55- fileNameSuffix : '.md' ,
56- } )
67+ performanceTest (
68+ {
69+ testRuns : 10 ,
70+ linux : {
71+ userCpuUsage : 30 ,
72+ heapTotal : 1 ,
73+ duration : 0.1 ,
74+ } ,
75+ darwin : {
76+ userCpuUsage : 30 ,
77+ heapTotal : 1 ,
78+ duration : 0.1 ,
5779 } ,
58- execute : async ( ) => {
59- result = await prepareRepoData ( [ workspace . uri . fsPath ] , [ workspace ] , telemetry , {
60- record : ( ) => { } ,
61- } as unknown as Metric < AmazonqCreateUpload > )
80+ win32 : {
81+ userCpuUsage : 30 ,
82+ heapTotal : 1 ,
83+ duration : 0.1 ,
6284 } ,
63- verify : async ( ) => verifyResult ( result , telemetry , 10000 ) ,
85+ } ,
86+
87+ 'handles large files' ,
88+ function ( ) {
89+ const telemetry = new TelemetryHelper ( )
90+ let result : resultType
91+ let workspace : WorkspaceFolder
92+ return {
93+ setup : async ( ) => {
94+ workspace = await createTestWorkspace ( 10 , {
95+ fileNamePrefix : 'file' ,
96+ fileContent : getRandomString ( 1000 ) ,
97+ fileNameSuffix : '.md' ,
98+ } )
99+ } ,
100+ execute : async ( ) => {
101+ result = await prepareRepoData ( [ workspace . uri . fsPath ] , [ workspace ] , telemetry , {
102+ record : ( ) => { } ,
103+ } as unknown as Metric < AmazonqCreateUpload > )
104+ } ,
105+ verify : async ( ) => verifyResult ( result , telemetry , 10000 ) ,
106+ }
64107 }
65- } )
108+ )
66109} )
0 commit comments