@@ -4,7 +4,8 @@ const path = require('path');
4
4
const chai = require ( "chai" ) ,
5
5
expect = chai . expect ,
6
6
sinon = require ( 'sinon' ) ,
7
- chaiAsPromised = require ( "chai-as-promised" ) ;
7
+ chaiAsPromised = require ( "chai-as-promised" ) ,
8
+ fs = require ( 'fs' ) ;
8
9
9
10
const utils = require ( '../../../../bin/helpers/utils' ) ,
10
11
constant = require ( '../../../../bin/helpers/constants' ) ,
@@ -236,4 +237,24 @@ describe("utils", () => {
236
237
sinon . assert . calledOnce ( sendUsageReportStub ) ;
237
238
} ) ;
238
239
} ) ;
240
+
241
+ describe ( "exportResults" , ( ) => {
242
+
243
+ it ( "should export results to log/build_results.txt" , ( ) => {
244
+ sinon . stub ( fs , 'writeFileSync' ) . returns ( true ) ;
245
+ utils . exportResults ( "build_id" , "build_url" ) ;
246
+ fs . writeFileSync . restore ( ) ;
247
+ } ) ;
248
+
249
+ it ( "should log warning if write to log/build_results.txt fails" , ( ) => {
250
+ let writeFileSyncStub = sinon . stub ( fs , 'writeFileSync' ) ;
251
+ let loggerWarnStub = sinon . stub ( logger , "warn" ) ;
252
+ writeFileSyncStub . yields ( new Error ( "Write Failed" ) ) ;
253
+ utils . exportResults ( "build_id" , "build_url" ) ;
254
+ sinon . assert . calledOnce ( writeFileSyncStub ) ;
255
+ sinon . assert . calledTwice ( loggerWarnStub ) ;
256
+ fs . writeFileSync . restore ( ) ;
257
+ } ) ;
258
+
259
+ } ) ;
239
260
} ) ;
0 commit comments