AspectEdit#onDeleteRequestSuccess now adds and drops attributes properly
This commit is contained in:
parent
e0c0d2036c
commit
45e47513c2
2 changed files with 26 additions and 6 deletions
|
|
@ -50,7 +50,7 @@ var AspectEdit = {
|
||||||
type: "DELETE",
|
type: "DELETE",
|
||||||
url: "/requests/" + person.attr('data-guid'),
|
url: "/requests/" + person.attr('data-guid'),
|
||||||
data: {"accept" : true, "aspect_id" : dropzone.attr('data-aspect_id') },
|
data: {"accept" : true, "aspect_id" : dropzone.attr('data-aspect_id') },
|
||||||
success: function() { AspectEdit.onDeleteRequestSuccess(person); }
|
success: function() { AspectEdit.onDeleteRequestSuccess(person, dropzone); }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -70,9 +70,11 @@ var AspectEdit = {
|
||||||
dropzone.closest("ul").append(person);
|
dropzone.closest("ul").append(person);
|
||||||
},
|
},
|
||||||
|
|
||||||
onDeleteRequestSuccess: function(person) {
|
onDeleteRequestSuccess: function(person, dropzone) {
|
||||||
AspectEdit.decrementRequestsCounter();
|
AspectEdit.decrementRequestsCounter();
|
||||||
person.removeClass('request');
|
person.removeClass('request');
|
||||||
|
person.attr('data-aspect_id', dropzone.attr('data-aspect_id'));
|
||||||
|
person.removeAttr('data-person_id');
|
||||||
},
|
},
|
||||||
|
|
||||||
onMovePersonSuccess: function(person, dropzone) {
|
onMovePersonSuccess: function(person, dropzone) {
|
||||||
|
|
|
||||||
|
|
@ -183,14 +183,32 @@ describe("AspectEdit", function() {
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
it("decrements the request counter", function() {
|
it("decrements the request counter", function() {
|
||||||
|
var person = $('li.person');
|
||||||
|
var dropzone = $('.dropzone.ui-droppable[data-aspect_id="guid-of-target-aspect"]');
|
||||||
spyOn(AspectEdit, "decrementRequestsCounter");
|
spyOn(AspectEdit, "decrementRequestsCounter");
|
||||||
AspectEdit.onDeleteRequestSuccess($('li.person'));
|
AspectEdit.onDeleteRequestSuccess(person, dropzone);
|
||||||
expect(AspectEdit.decrementRequestsCounter).toHaveBeenCalled();
|
expect(AspectEdit.decrementRequestsCounter).toHaveBeenCalled();
|
||||||
});
|
});
|
||||||
it("takes the request class off the person li", function() {
|
it("takes the request class off the person li", function() {
|
||||||
expect($('li.person')).toHaveClass('request');
|
var person = $('li.person');
|
||||||
AspectEdit.onDeleteRequestSuccess($('li.person'));
|
var dropzone = $('.dropzone.ui-droppable[data-aspect_id="guid-of-target-aspect"]');
|
||||||
expect($('li.person')).not.toHaveClass('request');
|
expect(person).toHaveClass('request');
|
||||||
|
AspectEdit.onDeleteRequestSuccess(person, dropzone);
|
||||||
|
expect(person).not.toHaveClass('request');
|
||||||
|
});
|
||||||
|
it("removes data-person_id from the li", function() {
|
||||||
|
var person = $('li.person');
|
||||||
|
var dropzone = $('.dropzone.ui-droppable[data-aspect_id="guid-of-target-aspect"]');
|
||||||
|
expect(person.attr("data-person_id")).toBeDefined();
|
||||||
|
AspectEdit.onDeleteRequestSuccess(person, dropzone);
|
||||||
|
expect(person.attr("data-person_id")).not.toBeDefined();
|
||||||
|
});
|
||||||
|
it("puts a data-aspect_id on the li", function() {
|
||||||
|
var person = $('li.person');
|
||||||
|
var dropzone = $('.dropzone.ui-droppable[data-aspect_id="guid-of-target-aspect"]');
|
||||||
|
expect(person.attr("data-aspect_id")).not.toBeDefined();
|
||||||
|
AspectEdit.onDeleteRequestSuccess(person, dropzone);
|
||||||
|
expect(person.attr("data-aspect_id")).toEqual("guid-of-target-aspect");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue