summaryrefslogtreecommitdiffstats
path: root/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html')
-rw-r--r--polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html110
1 files changed, 94 insertions, 16 deletions
diff --git a/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html b/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html
index 54c1355ffd..b858c51a8a 100644
--- a/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html
+++ b/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html
@@ -1,4 +1,5 @@
<!--
+@license
Copyright (C) 2016 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
@@ -22,7 +23,7 @@ limitations under the License.
<link rel="import" href="gr-patch-set-behavior.html">
<script>
- suite('gr-path-list-behavior tests', () => {
+ suite('gr-patch-set-behavior tests', () => {
test('getRevisionByPatchNum', () => {
const get = Gerrit.PatchSetBehavior.getRevisionByPatchNum;
const revisions = [
@@ -35,31 +36,37 @@ limitations under the License.
assert.equal(get(revisions, '3'), undefined);
});
- test('fetchIsLatestKnown on latest', done => {
+ test('fetchChangeUpdates on latest', done => {
const knownChange = {
revisions: {
sha1: {description: 'patch 1', _number: 1},
sha2: {description: 'patch 2', _number: 2},
},
+ status: 'NEW',
+ messages: [],
};
const mockRestApi = {
getChangeDetail() {
return Promise.resolve(knownChange);
},
};
- Gerrit.PatchSetBehavior.fetchIsLatestKnown(knownChange, mockRestApi)
- .then(isLatest => {
- assert.isTrue(isLatest);
+ Gerrit.PatchSetBehavior.fetchChangeUpdates(knownChange, mockRestApi)
+ .then(result => {
+ assert.isTrue(result.isLatest);
+ assert.isNotOk(result.newStatus);
+ assert.isFalse(result.newMessages);
done();
});
});
- test('fetchIsLatestKnown not on latest', done => {
+ test('fetchChangeUpdates not on latest', done => {
const knownChange = {
revisions: {
sha1: {description: 'patch 1', _number: 1},
sha2: {description: 'patch 2', _number: 2},
},
+ status: 'NEW',
+ messages: [],
};
const actualChange = {
revisions: {
@@ -67,15 +74,81 @@ limitations under the License.
sha2: {description: 'patch 2', _number: 2},
sha3: {description: 'patch 3', _number: 3},
},
+ status: 'NEW',
+ messages: [],
};
const mockRestApi = {
getChangeDetail() {
return Promise.resolve(actualChange);
},
};
- Gerrit.PatchSetBehavior.fetchIsLatestKnown(knownChange, mockRestApi)
- .then(isLatest => {
- assert.isFalse(isLatest);
+ Gerrit.PatchSetBehavior.fetchChangeUpdates(knownChange, mockRestApi)
+ .then(result => {
+ assert.isFalse(result.isLatest);
+ assert.isNotOk(result.newStatus);
+ assert.isFalse(result.newMessages);
+ done();
+ });
+ });
+
+ test('fetchChangeUpdates new status', done => {
+ const knownChange = {
+ revisions: {
+ sha1: {description: 'patch 1', _number: 1},
+ sha2: {description: 'patch 2', _number: 2},
+ },
+ status: 'NEW',
+ messages: [],
+ };
+ const actualChange = {
+ revisions: {
+ sha1: {description: 'patch 1', _number: 1},
+ sha2: {description: 'patch 2', _number: 2},
+ },
+ status: 'MERGED',
+ messages: [],
+ };
+ const mockRestApi = {
+ getChangeDetail() {
+ return Promise.resolve(actualChange);
+ },
+ };
+ Gerrit.PatchSetBehavior.fetchChangeUpdates(knownChange, mockRestApi)
+ .then(result => {
+ assert.isTrue(result.isLatest);
+ assert.equal(result.newStatus, 'MERGED');
+ assert.isFalse(result.newMessages);
+ done();
+ });
+ });
+
+ test('fetchChangeUpdates new messages', done => {
+ const knownChange = {
+ revisions: {
+ sha1: {description: 'patch 1', _number: 1},
+ sha2: {description: 'patch 2', _number: 2},
+ },
+ status: 'NEW',
+ messages: [],
+ };
+ const actualChange = {
+ revisions: {
+ sha1: {description: 'patch 1', _number: 1},
+ sha2: {description: 'patch 2', _number: 2},
+ },
+ status: 'NEW',
+ messages: [{message: 'blah blah'}],
+ };
+ const mockRestApi = {
+ getChangeDetail() {
+ return Promise.resolve(actualChange);
+ },
+ };
+ Gerrit.PatchSetBehavior.fetchChangeUpdates(knownChange, mockRestApi)
+ .then(result => {
+ assert.isTrue(result.isLatest);
+ assert.isNotOk(result.newStatus);
+ assert.isTrue(result.newMessages);
done();
});
});
@@ -226,24 +299,29 @@ limitations under the License.
{_number: 1},
];
const sorted = [
- {_number: 0},
- {_number: 1},
{_number: 2},
+ {_number: 1},
+ {_number: 0},
];
assert.deepEqual(sort(revisions), sorted);
// Edit patchset should follow directly after its basePatchNum.
revisions.push({_number: 'edit', basePatchNum: 2});
- sorted.push({_number: 'edit', basePatchNum: 2});
+ sorted.unshift({_number: 'edit', basePatchNum: 2});
assert.deepEqual(sort(revisions), sorted);
- revisions[3].basePatchNum = 0;
- const edit = sorted.pop();
+ revisions[0].basePatchNum = 0;
+ const edit = sorted.shift();
edit.basePatchNum = 0;
- // Edit patchset should be at index 1.
- sorted.splice(1, 0, edit);
+ // Edit patchset should be at index 2.
+ sorted.splice(2, 0, edit);
assert.deepEqual(sort(revisions), sorted);
});
+
+ test('getParentIndex', () => {
+ assert.equal(Gerrit.PatchSetBehavior.getParentIndex('-13'), 13);
+ assert.equal(Gerrit.PatchSetBehavior.getParentIndex(-4), 4);
+ });
});
</script>