diff --git a/progtest/src/reader/YamlTestReader.js b/progtest/src/reader/YamlTestReader.js index a28c1f33..dc0ef3be 100644 --- a/progtest/src/reader/YamlTestReader.js +++ b/progtest/src/reader/YamlTestReader.js @@ -71,7 +71,7 @@ module.exports = Class( 'YamlTestReader' ) */ 'virtual public loadCases'( yaml ) { - const data = this._yamlParser.safeLoad( yaml ) + const data = ( this._yamlParser.safeLoad( yaml ) || [] ) .map( this._createTestCase ); return data; diff --git a/progtest/test/reader/YamlTestReaderTest.js b/progtest/test/reader/YamlTestReaderTest.js index 9fb26fd0..bddc2113 100644 --- a/progtest/test/reader/YamlTestReaderTest.js +++ b/progtest/test/reader/YamlTestReaderTest.js @@ -52,4 +52,14 @@ describe( "YamlTestReader", () => expect( Sut( mock_parser, case_ctor ).loadCases( yaml ) ) .to.deep.equal( [ { ok: parsed[0] } ] ); } ); + + + it( "produces empty array given no tests", () => + { + const mock_parser = { safeLoad: () => null }; + const case_ctor = () => null; // unused + + expect( Sut( mock_parser, case_ctor ).loadCases( "" ) ) + .to.deep.equal( [] ); + } ); } );