fixed some bugs & linted & prettyfied gulpfile

This commit is contained in:
Kevin Jahns
2015-09-13 18:22:45 +02:00
parent 82b3e50d49
commit 2a601ac6f6
11 changed files with 82 additions and 141 deletions

View File

@@ -16,12 +16,12 @@ class DeleteStore extends Y.utils.RBTree {
}
isDeleted (id) {
var n = this.findNodeWithUpperBound(id)
return n !== null && n.val.id[0] === id[0] && id[0] < n.val.id[0] + n.val.len
return n !== null && n.val.id[0] === id[0] && id[1] < n.val.id[1] + n.val.len
}
delete (id) {
var n = this.findNodeWithUpperBound(id)
if (n != null && n.val.id[0] === id[0]) {
if (n.val.id[1] === id[1]) {
if (n.val.id[1] <= id[1] && id[1] < n.val.id[1] + n.val.len) {
// already deleted
return
} else if (n.val.id[1] + n.val.len === id[1]) {

View File

@@ -10,14 +10,20 @@ describe('Memory', function () {
it('Deleted operation is deleted', function () {
ds.delete(['u1', 10])
expect(ds.isDeleted(['u1', 10])).toBeTruthy()
expect(ds.toDeleteSet()).toBeTruthy({'u1': [10, 1]})
expect(ds.toDeleteSet()).toEqual({'u1': [[10, 1]]})
})
it('Deleted operation extends other deleted operation', function () {
ds.delete(['u1', 10])
ds.delete(['u1', 11])
expect(ds.isDeleted(['u1', 10])).toBeTruthy()
expect(ds.isDeleted(['u1', 11])).toBeTruthy()
expect(ds.toDeleteSet()).toBeTruthy({'u1': [10, 2]})
expect(ds.toDeleteSet()).toEqual({'u1': [[10, 2]]})
})
it('Deleted operation extends other deleted operation', function () {
ds.delete(['0', 3])
ds.delete(['0', 4])
ds.delete(['0', 2])
expect(ds.toDeleteSet()).toEqual({'0': [[2, 3]]})
})
it('Creates operations', function () {
var dels = ds.getDeletions({5: [[4, 1]]})