mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-07 20:31:06 -05:00
remove stat test for missing files
This commit is contained in:
parent
d46943a7bb
commit
2a23082c4e
2 changed files with 5 additions and 33 deletions
|
@ -4,7 +4,6 @@ logger = require "logger-sharelatex"
|
|||
settings = require("settings-sharelatex")
|
||||
Errors = require "./Errors"
|
||||
SafeReader = require "./SafeReader"
|
||||
async = require "async"
|
||||
|
||||
module.exports = ResourceStateManager =
|
||||
|
||||
|
@ -61,21 +60,9 @@ module.exports = ResourceStateManager =
|
|||
seenFile = {}
|
||||
for file in allFiles
|
||||
seenFile[file] = true
|
||||
missingFileCandidates = (resource.path for resource in resources when not seenFile[resource.path])
|
||||
# now check if they are really missing
|
||||
ResourceStateManager._checkMissingFiles missingFileCandidates, basePath, (missingFiles) ->
|
||||
if missingFiles?.length > 0
|
||||
logger.err missingFiles:missingFiles, basePath:basePath, allFiles:allFiles, resources:resources, "missing input files for project"
|
||||
return callback new Errors.FilesOutOfSyncError("resource files missing in incremental update")
|
||||
else
|
||||
callback()
|
||||
|
||||
_checkMissingFiles: (missingFileCandidates, basePath, callback = (missingFiles) ->) ->
|
||||
if missingFileCandidates.length > 0
|
||||
fileDoesNotExist = (file, cb) ->
|
||||
fs.stat Path.join(basePath, file), (err) ->
|
||||
logger.log file:file, err:err, result: err?, "stating potential missing file"
|
||||
cb(err?)
|
||||
async.filterSeries missingFileCandidates, fileDoesNotExist, callback
|
||||
missingFiles = (resource.path for resource in resources when not seenFile[resource.path])
|
||||
if missingFiles?.length > 0
|
||||
logger.err missingFiles:missingFiles, basePath:basePath, allFiles:allFiles, resources:resources, "missing input files for project"
|
||||
return callback new Errors.FilesOutOfSyncError("resource files missing in incremental update")
|
||||
else
|
||||
callback([])
|
||||
callback()
|
||||
|
|
|
@ -88,27 +88,12 @@ describe "ResourceStateManager", ->
|
|||
it "should call the callback", ->
|
||||
@callback.calledWithExactly().should.equal true
|
||||
|
||||
describe "when there is a file missing from the outputFileFinder but present on disk", ->
|
||||
beforeEach ->
|
||||
@allFiles = [ @resources[0].path, @resources[1].path]
|
||||
@fs.stat = sinon.stub().callsArg(1)
|
||||
@ResourceStateManager.checkResourceFiles(@resources, @allFiles, @basePath, @callback)
|
||||
|
||||
it "should stat the file to see if it is present", ->
|
||||
@fs.stat.called.should.equal true
|
||||
|
||||
it "should call the callback", ->
|
||||
@callback.calledWithExactly().should.equal true
|
||||
|
||||
describe "when there is a missing file", ->
|
||||
beforeEach ->
|
||||
@allFiles = [ @resources[0].path, @resources[1].path]
|
||||
@fs.stat = sinon.stub().callsArgWith(1, new Error())
|
||||
@ResourceStateManager.checkResourceFiles(@resources, @allFiles, @basePath, @callback)
|
||||
|
||||
it "should stat the file to see if it is present", ->
|
||||
@fs.stat.called.should.equal true
|
||||
|
||||
it "should call the callback with an error", ->
|
||||
error = new Errors.FilesOutOfSyncError("resource files missing in incremental update")
|
||||
@callback.calledWith(error).should.equal true
|
||||
|
|
Loading…
Reference in a new issue