Saving a buffer does not trigger a "contents-change" event

This commit is contained in:
Corey Johnson & Nathan Sobo
2012-07-02 17:48:30 -07:00
parent ef7121dfb3
commit b59bd4bc7b
2 changed files with 12 additions and 1 deletions

View File

@@ -57,13 +57,23 @@ describe 'Buffer', ->
path = "/tmp/tmp.txt"
fs.write(path, "first")
buffer.destroy()
buffer = new Buffer(path)
afterEach ->
fs.remove(path)
it "does not trigger a contents-change event when Atom modifies the file", ->
buffer.insert([0,0], "HELLO!")
changeHandler = jasmine.createSpy("buffer changed")
buffer.on "change", changeHandler
buffer.save()
waits 30
runs ->
expect(changeHandler).not.toHaveBeenCalled()
describe "when the buffer is unmodified", ->
it "triggers 'change' event and buffer remains unmodified", ->
buffer = new Buffer(path)
changeHandler = jasmine.createSpy('changeHandler')
buffer.on 'change', changeHandler
fs.write(path, "second")

View File

@@ -172,6 +172,7 @@ class Buffer
@trigger 'before-save'
fs.write path, @getText()
@file?.updateMd5()
@modified = false
@setPath(path)
@trigger 'after-save'