summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLogan Hanks <logan@google.com>2018-09-26 18:16:56 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2018-09-26 18:16:56 +0000
commit783b189407123bef5cbd0dfedb0d863faaf2bbf0 (patch)
tree6b8cc82ba934c00349e978463e9473b8bbad0e12
parent4fa21ada22faf1c8a60832245bde5e8dab53bc23 (diff)
parent64e53550da3b1bd666d4797ddf29f5ca49797a6c (diff)
Merge "Deflake label change test"
-rw-r--r--polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata-it_test.html51
1 files changed, 25 insertions, 26 deletions
diff --git a/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata-it_test.html b/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata-it_test.html
index b056233d96..5b36221b86 100644
--- a/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata-it_test.html
+++ b/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata-it_test.html
@@ -136,43 +136,42 @@ limitations under the License.
suite('label updates', () => {
let plugin;
- let labelChangeStub;
- setup(done => {
+ setup(() => {
Gerrit.install(p => plugin = p, '0.1',
new URL('test/plugin.html?' + Math.random(),
window.location.href).toString());
sandbox.stub(Gerrit, '_arePluginsLoaded').returns(true);
Gerrit._setPluginsPending([]);
element = createElement();
-
- labelChangeStub = sandbox.stub();
- plugin.changeMetadata().onLabelsChanged(labelChangeStub);
- flush(done);
});
test('labels changed callback', done => {
- assert.equal(labelChangeStub.callCount, 1);
- assert.isTrue(labelChangeStub.calledWithExactly(labels));
- assert.equal(labelChangeStub.args[0][0]['CI'].all.length, 2);
- element.set(['change', 'labels'], {
- CI: {
- all: [
- {value: 1, name: 'user 2', _account_id: 1},
- ],
- values: {
- ' 0': 'Don\'t submit as-is',
- '+1': 'No score',
- '+2': 'Looks good to me',
- },
- },
- });
- // Wait for fake rest API response.
- flush(() => {
- assert.equal(labelChangeStub.callCount, 2);
- assert.equal(labelChangeStub.args[1][0]['CI'].all.length, 1);
- done();
+ let callCount = 0;
+ const labelChangeSpy = sandbox.spy(arg => {
+ callCount++;
+ if (callCount === 1) {
+ assert.deepEqual(arg, labels);
+ assert.equal(arg.CI.all.length, 2);
+ element.set(['change', 'labels'], {
+ CI: {
+ all: [
+ {value: 1, name: 'user 2', _account_id: 1},
+ ],
+ values: {
+ ' 0': 'Don\'t submit as-is',
+ '+1': 'No score',
+ '+2': 'Looks good to me',
+ },
+ },
+ });
+ } else if (callCount === 2) {
+ assert.equal(arg.CI.all.length, 1);
+ done();
+ }
});
+
+ plugin.changeMetadata().onLabelsChanged(labelChangeSpy);
});
});
});