Add API event callback for 'revert'.
The API allows callbacks to modify the revertMessage displayed in the
confirmRevertDialog.
BUG= https://bugs.chromium.org/p/chromium/issues/detail?id=624383
Change-Id: I6d5aa061b20a26c09b79eef896bd27328b05d003
diff --git a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html
index c12d653..46a555a 100644
--- a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html
+++ b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html
@@ -102,6 +102,25 @@
element.handleEvent(element.EventType.COMMENT, {node: testCommentNode});
});
+ test('revert event', function(done) {
+ function appendToRevertMsg(c, msg) {
+ return msg + '\ninfo';
+ }
+ done();
+
+ assert.equal(element.modifyRevertMsg(null, 'test'), 'test');
+ assert.equal(errorStub.callCount, 0);
+
+ plugin.on(element.EventType.REVERT, throwErrFn);
+ plugin.on(element.EventType.REVERT, appendToRevertMsg);
+ assert.equal(element.modifyRevertMsg(null, 'test'), 'test\ninfo');
+ assert.isTrue(errorStub.calledOnce);
+
+ plugin.on(element.EventType.REVERT, appendToRevertMsg);
+ assert.equal(element.modifyRevertMsg(null, 'test'), 'test\ninfo\ninfo');
+ assert.isTrue(errorStub.calledTwice);
+ });
+
test('labelchange event', function(done) {
var testChange = {_number: 42};
plugin.on(element.EventType.LABEL_CHANGE, throwErrFn);