@@ -105,7 +105,7 @@ function _validateContent(report, fields = []) {
105105 'glibcVersionRuntime' , 'glibcVersionCompiler' , 'cwd' ,
106106 'reportVersion' , 'networkInterfaces' , 'threadId' ] ;
107107 checkForUnknownFields ( header , headerFields ) ;
108- assert . strictEqual ( header . reportVersion , 2 ) ; // Increment as needed.
108+ assert . strictEqual ( header . reportVersion , 3 ) ; // Increment as needed.
109109 assert . strictEqual ( typeof header . event , 'string' ) ;
110110 assert . strictEqual ( typeof header . trigger , 'string' ) ;
111111 assert ( typeof header . filename === 'string' || header . filename === null ) ;
@@ -232,19 +232,29 @@ function _validateContent(report, fields = []) {
232232 }
233233
234234 // Verify the format of the resourceUsage section.
235- const usage = report . resourceUsage ;
235+ const usage = { ...report . resourceUsage } ;
236+ // Delete it, otherwise checkForUnknownFields will throw error
237+ delete usage . constrained_memory ;
236238 const resourceUsageFields = [ 'userCpuSeconds' , 'kernelCpuSeconds' ,
237239 'cpuConsumptionPercent' , 'userCpuConsumptionPercent' ,
238- 'kernelCpuConsumptionPercent' , 'rss' , 'maxRss' ,
239- 'pageFaults' , 'fsActivity' ] ;
240+ 'kernelCpuConsumptionPercent' ,
241+ 'maxRss' , 'rss' , 'free_memory' , 'total_memory' ,
242+ 'available_memory' , 'pageFaults' , 'fsActivity' ] ;
240243 checkForUnknownFields ( usage , resourceUsageFields ) ;
241244 assert . strictEqual ( typeof usage . userCpuSeconds , 'number' ) ;
242245 assert . strictEqual ( typeof usage . kernelCpuSeconds , 'number' ) ;
243246 assert . strictEqual ( typeof usage . cpuConsumptionPercent , 'number' ) ;
244247 assert . strictEqual ( typeof usage . userCpuConsumptionPercent , 'number' ) ;
245248 assert . strictEqual ( typeof usage . kernelCpuConsumptionPercent , 'number' ) ;
246- assert ( Number . isSafeInteger ( usage . rss ) ) ;
247- assert ( Number . isSafeInteger ( usage . maxRss ) ) ;
249+ assert ( typeof usage . rss , 'string' ) ;
250+ assert ( typeof usage . maxRss , 'string' ) ;
251+ assert ( typeof usage . free_memory , 'string' ) ;
252+ assert ( typeof usage . total_memory , 'string' ) ;
253+ assert ( typeof usage . available_memory , 'string' ) ;
254+ // This field may not exsit
255+ if ( report . resourceUsage . constrained_memory ) {
256+ assert ( typeof report . resourceUsage . constrained_memory , 'string' ) ;
257+ }
248258 assert ( typeof usage . pageFaults === 'object' && usage . pageFaults !== null ) ;
249259 checkForUnknownFields ( usage . pageFaults , [ 'IORequired' , 'IONotRequired' ] ) ;
250260 assert ( Number . isSafeInteger ( usage . pageFaults . IORequired ) ) ;
0 commit comments