From 472531f6173795e6cac3db8bc8efefc34f7a95d0 Mon Sep 17 00:00:00 2001 From: Brian Gough Date: Tue, 18 Jul 2017 11:29:59 +0100 Subject: [PATCH 1/2] fix exception for empty content in TikzManager --- app/coffee/TikzManager.coffee | 4 ++-- test/unit/coffee/TikzManager.coffee | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/app/coffee/TikzManager.coffee b/app/coffee/TikzManager.coffee index cfa1332..5c08f20 100644 --- a/app/coffee/TikzManager.coffee +++ b/app/coffee/TikzManager.coffee @@ -22,8 +22,8 @@ module.exports = TikzManager = _includesTikz: (resource) -> # check if we are using tikz externalize - content = resource.content.slice(0,65536) - if content.indexOf("\\tikzexternalize") >= 0 + content = resource.content?.slice(0,65536) + if content?.indexOf("\\tikzexternalize") >= 0 return true else return false diff --git a/test/unit/coffee/TikzManager.coffee b/test/unit/coffee/TikzManager.coffee index 8174b4a..816b3b1 100644 --- a/test/unit/coffee/TikzManager.coffee +++ b/test/unit/coffee/TikzManager.coffee @@ -30,6 +30,12 @@ describe 'TikzManager', -> { path: 'output.tex' } ]).should.equal false + it "should return false if the file has no content", -> + @TikzManager.needsOutputFile("main.tex", [ + { path: 'foo.tex' }, + { path: 'main.tex' } + ]).should.equal false + describe "injectOutputFile", -> beforeEach -> @rootDir = "/mock" From 11cd569ed95b0673388ecf9ba01f161de6600901 Mon Sep 17 00:00:00 2001 From: Brian Gough Date: Tue, 18 Jul 2017 11:30:22 +0100 Subject: [PATCH 2/2] stub out unwanted dependency in unit tests --- test/unit/coffee/CompileManagerTests.coffee | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/unit/coffee/CompileManagerTests.coffee b/test/unit/coffee/CompileManagerTests.coffee index 68629a1..de33166 100644 --- a/test/unit/coffee/CompileManagerTests.coffee +++ b/test/unit/coffee/CompileManagerTests.coffee @@ -18,6 +18,7 @@ describe "CompileManager", -> "child_process": @child_process = {} "./CommandRunner": @CommandRunner = {} "./DraftModeManager": @DraftModeManager = {} + "./TikzManager": @TikzManager = {} "fs": @fs = {} @callback = sinon.stub() @@ -55,6 +56,7 @@ describe "CompileManager", -> @OutputFileFinder.findOutputFiles = sinon.stub().callsArgWith(2, null, @output_files) @OutputCacheManager.saveOutputFiles = sinon.stub().callsArgWith(2, null, @build_files) @DraftModeManager.injectDraftMode = sinon.stub().callsArg(1) + @TikzManager.needsOutputFile = sinon.stub().returns(false) describe "normally", -> beforeEach ->