diff --git a/src/client/models/site/file_cache.coffee b/src/client/models/site/file_cache.coffee index 3a6b3eaf1..2ddd6580c 100644 --- a/src/client/models/site/file_cache.coffee +++ b/src/client/models/site/file_cache.coffee @@ -69,7 +69,7 @@ module.exports = class FileCache extends Backbone.Events break if file? - fileEndIndex = tokenIndex - 1 + fileEndIndex = tokenIndex @_files[file] = text.substring fileStartIndex, fileEndIndex fileCount += 1 diff --git a/src/client/models/site/file_cache.test.coffee b/src/client/models/site/file_cache.test.coffee index ac0cea48f..737778c47 100644 --- a/src/client/models/site/file_cache.test.coffee +++ b/src/client/models/site/file_cache.test.coffee @@ -21,6 +21,15 @@ describe 'file_cache.coffee', -> it 'can load an archive with multiple files', -> @cache._ajax = makeTestAjax '#file=alpha\nbravo charlie\n#file=delta\necho foxtrot' + @cache.loadArchive 'http://test' + .then => + @cache.hasFile('alpha').should.equal true + @cache.getFile('alpha').should.equal 'bravo charlie\n' + @cache.hasFile('delta').should.equal true + @cache.getFile('delta').should.equal 'echo foxtrot' + + it 'can load an archive without newlines', -> + @cache._ajax = makeTestAjax '#file=alpha\nbravo charlie#file=delta\necho foxtrot' @cache.loadArchive 'http://test' .then => @cache.hasFile('alpha').should.equal true @@ -33,9 +42,9 @@ describe 'file_cache.coffee', -> @cache.loadArchive 'http://test' .then => @cache.hasFile('alpha').should.equal true - @cache.getFile('alpha').should.equal 'bravo charlie' + @cache.getFile('alpha').should.equal 'bravo charlie\n' @cache.hasFile('delta').should.equal true - @cache.getFile('delta').should.equal '\n' + @cache.getFile('delta').should.equal '' @cache.hasFile('echo').should.equal true @cache.getFile('echo').should.equal 'foxtrot golf' @@ -44,7 +53,7 @@ describe 'file_cache.coffee', -> @cache.loadArchive 'http://test' .then => @cache.hasFile('alpha').should.equal true - @cache.getFile('alpha').should.equal 'bravo charlie' + @cache.getFile('alpha').should.equal 'bravo charlie\n' @cache.hasFile('delta').should.equal true @cache.getFile('delta').should.equal '' @@ -56,7 +65,7 @@ describe 'file_cache.coffee', -> @cache.loadArchive 'http://test2' .then => @cache.hasFile('alpha').should.equal true - @cache.getFile('alpha').should.equal 'bravo charlie' + @cache.getFile('alpha').should.equal 'bravo charlie\n' @cache.hasFile('delta').should.equal true @cache.getFile('delta').should.equal 'echo foxtrot' @cache.hasFile('golf').should.equal true