summaryrefslogtreecommitdiffstats
path: root/polygerrit-ui/app/elements/change/gr-message/gr-message_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'polygerrit-ui/app/elements/change/gr-message/gr-message_test.html')
-rw-r--r--polygerrit-ui/app/elements/change/gr-message/gr-message_test.html135
1 files changed, 85 insertions, 50 deletions
diff --git a/polygerrit-ui/app/elements/change/gr-message/gr-message_test.html b/polygerrit-ui/app/elements/change/gr-message/gr-message_test.html
index 89c7173fe9..aa18c4e7b6 100644
--- a/polygerrit-ui/app/elements/change/gr-message/gr-message_test.html
+++ b/polygerrit-ui/app/elements/change/gr-message/gr-message_test.html
@@ -20,8 +20,7 @@ limitations under the License.
<script src="../../../bower_components/webcomponentsjs/webcomponents-lite.min.js"></script>
<script src="../../../bower_components/web-component-tester/browser.js"></script>
-
-<link rel="import" href="../../../bower_components/iron-test-helpers/iron-test-helpers.html">
+<link rel="import" href="../../../test/common-test-setup.html"/>
<link rel="import" href="gr-message.html">
<script>void(0);</script>
@@ -33,30 +32,32 @@ limitations under the License.
</test-fixture>
<script>
- suite('gr-message tests', function() {
- var element;
+ suite('gr-message tests', () => {
+ let element;
- setup(function() {
+ setup(done => {
stub('gr-rest-api-interface', {
- getLoggedIn: function() { return Promise.resolve(false); },
+ getLoggedIn() { return Promise.resolve(false); },
+ getConfig() { return Promise.resolve({}); },
});
element = fixture('basic');
+ flush(done);
});
- test('reply event', function(done) {
+ test('reply event', done => {
element.message = {
- 'id': '47c43261_55aa2c41',
- 'author': {
- '_account_id': 1115495,
- 'name': 'Andrew Bonventre',
- 'email': 'andybons@chromium.org',
+ id: '47c43261_55aa2c41',
+ author: {
+ _account_id: 1115495,
+ name: 'Andrew Bonventre',
+ email: 'andybons@chromium.org',
},
- 'date': '2016-01-12 20:24:49.448000000',
- 'message': 'Uploaded patch set 1.',
- '_revision_number': 1
+ date: '2016-01-12 20:24:49.448000000',
+ message: 'Uploaded patch set 1.',
+ _revision_number: 1,
};
- element.addEventListener('reply', function(e) {
+ element.addEventListener('reply', e => {
assert.deepEqual(e.detail.message, element.message);
done();
});
@@ -64,41 +65,25 @@ limitations under the License.
MockInteractions.tap(element.$$('.replyContainer gr-button'));
});
- test('reviewer update', function() {
- var author = {
- _account_id: 1115495,
- name: 'Andrew Bonventre',
- email: 'andybons@chromium.org',
- };
- var reviewer = {
- _account_id: 123456,
- name: 'Foo Bar',
- email: 'barbar@chromium.org',
- };
+ test('autogenerated prefix hiding', () => {
element.message = {
- id: 0xDEADBEEF,
- author: author,
- reviewer: reviewer,
- date: '2016-01-12 20:24:49.448000000',
- type: 'REVIEWER_UPDATE',
- updates: [
- {
- message: 'Added to CC:',
- reviewers: [reviewer],
- }
- ],
+ tag: 'autogenerated:gerrit:test',
+ updated: '2016-01-12 20:24:49.448000000',
};
- flushAsynchronousOperations();
- var content = element.$$('.contentContainer');
- assert.isOk(content);
- assert.strictEqual(element.$$('gr-account-chip').account, reviewer);
- assert.equal(author.name, element.$$('.name').textContent);
+
+ assert.isTrue(element.isAutomated);
+ assert.isFalse(element.hidden);
+
+ element.hideAutomated = true;
+
+ assert.isTrue(element.hidden);
});
- test('autogenerated prefix hiding', function() {
+ test('reviewer message treated as autogenerated', () => {
element.message = {
tag: 'autogenerated:gerrit:test',
updated: '2016-01-12 20:24:49.448000000',
+ reviewer: {},
};
assert.isTrue(element.isAutomated);
@@ -109,9 +94,9 @@ limitations under the License.
assert.isTrue(element.hidden);
});
- test('reviewer message treated as autogenerated', function() {
+ test('batch reviewer message treated as autogenerated', () => {
element.message = {
- tag: 'autogenerated:gerrit:test',
+ type: 'REVIEWER_UPDATE',
updated: '2016-01-12 20:24:49.448000000',
reviewer: {},
};
@@ -124,7 +109,7 @@ limitations under the License.
assert.isTrue(element.hidden);
});
- test('tag that is not autogenerated prefix does not hide', function() {
+ test('tag that is not autogenerated prefix does not hide', () => {
element.message = {
tag: 'something',
updated: '2016-01-12 20:24:49.448000000',
@@ -138,12 +123,62 @@ limitations under the License.
assert.isFalse(element.hidden);
});
- test('reply button hidden unless logged in', function() {
- var message = {
- 'message': 'Uploaded patch set 1.',
+ test('reply button hidden unless logged in', () => {
+ const message = {
+ message: 'Uploaded patch set 1.',
};
assert.isFalse(element._computeShowReplyButton(message, false));
assert.isTrue(element._computeShowReplyButton(message, true));
});
+
+ test('_computeShowOnBehalfOf', () => {
+ const message = {
+ message: '...',
+ };
+ assert.isNotOk(element._computeShowOnBehalfOf(message));
+ message.author = {_account_id: 1115495};
+ assert.isNotOk(element._computeShowOnBehalfOf(message));
+ message.real_author = {_account_id: 1115495};
+ assert.isNotOk(element._computeShowOnBehalfOf(message));
+ message.real_author._account_id = 123456;
+ assert.isOk(element._computeShowOnBehalfOf(message));
+ message.updated_by = message.author;
+ delete message.author;
+ assert.isOk(element._computeShowOnBehalfOf(message));
+ delete message.updated_by;
+ assert.isNotOk(element._computeShowOnBehalfOf(message));
+ });
+
+ ['Trybot-Ready', 'Tryjob-Request', 'Commit-Queue'].forEach(label => {
+ test(`${label} ignored for color voting`, () => {
+ element.message = {
+ author: {},
+ expanded: false,
+ message: `Patch Set 1: ${label}+1`,
+ };
+ assert.isNotOk(
+ Polymer.dom(element.root).querySelector('.negativeVote'));
+ assert.isNotOk(
+ Polymer.dom(element.root).querySelector('.positiveVote'));
+ });
+ });
+
+ test('negative vote', () => {
+ element.message = {
+ author: {},
+ expanded: false,
+ message: 'Patch Set 1: Verified+1 Code-Review-2 Trybot-Ready+1',
+ };
+ assert.isOk(Polymer.dom(element.root).querySelector('.negativeVote'));
+ });
+
+ test('positive vote', () => {
+ element.message = {
+ author: {},
+ expanded: false,
+ message: 'Patch Set 1: Verified-1 Code-Review+2 Trybot-Ready-1',
+ };
+ assert.isOk(Polymer.dom(element.root).querySelector('.positiveVote'));
+ });
});
</script>