@@ -4,7 +4,8 @@ const path = require('path');
44const chai = require ( "chai" ) ,
55 expect = chai . expect ,
66 sinon = require ( 'sinon' ) ,
7- chaiAsPromised = require ( "chai-as-promised" ) ;
7+ chaiAsPromised = require ( "chai-as-promised" ) ,
8+ fs = require ( 'fs' ) ;
89
910const utils = require ( '../../../../bin/helpers/utils' ) ,
1011 constant = require ( '../../../../bin/helpers/constants' ) ,
@@ -236,4 +237,24 @@ describe("utils", () => {
236237 sinon . assert . calledOnce ( sendUsageReportStub ) ;
237238 } ) ;
238239 } ) ;
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+ } ) ;
239260} ) ;
0 commit comments