ES6ify /gr-email-editor/*

Bug: Issue 6179
Change-Id: I10a6fd7ca939f1d33fde4d8cca003afbd66b88ae
This commit is contained in:
Kasper Nilsson
2017-05-15 17:15:49 -07:00
parent 65afb162b2
commit c7e684b5e2
2 changed files with 35 additions and 35 deletions

View File

@@ -27,7 +27,7 @@
_emails: Array,
_emailsToRemove: {
type: Array,
value: function() { return []; },
value() { return []; },
},
_newPreferred: {
type: String,
@@ -35,18 +35,17 @@
},
},
loadData: function() {
return this.$.restAPI.getAccountEmails().then(function(emails) {
loadData() {
return this.$.restAPI.getAccountEmails().then(emails => {
this._emails = emails;
}.bind(this));
});
},
save: function() {
var promises = [];
save() {
const promises = [];
for (var i = 0; i < this._emailsToRemove.length; i++) {
promises.push(this.$.restAPI.deleteAccountEmail(
this._emailsToRemove[i].email));
for (const emailObj of this._emailsToRemove) {
promises.push(this.$.restAPI.deleteAccountEmail(emailObj.email));
}
if (this._newPreferred) {
@@ -54,30 +53,30 @@
this._newPreferred));
}
return Promise.all(promises).then(function() {
return Promise.all(promises).then(() => {
this._emailsToRemove = [];
this._newPreferred = null;
this.hasUnsavedChanges = false;
}.bind(this));
});
},
_handleDeleteButton: function(e) {
var index = parseInt(e.target.getAttribute('data-index'));
var email = this._emails[index];
_handleDeleteButton(e) {
const index = parseInt(e.target.getAttribute('data-index'));
const email = this._emails[index];
this.push('_emailsToRemove', email);
this.splice('_emails', index, 1);
this.hasUnsavedChanges = true;
},
_handlePreferredControlTap: function(e) {
_handlePreferredControlTap(e) {
if (e.target.classList.contains('preferredControl')) {
e.target.firstElementChild.click();
}
},
_handlePreferredChange: function(e) {
var preferred = e.target.value;
for (var i = 0; i < this._emails.length; i++) {
_handlePreferredChange(e) {
const preferred = e.target.value;
for (let i = 0; i < this._emails.length; i++) {
if (preferred === this._emails[i].email) {
this.set(['_emails', i, 'preferred'], true);
this._newPreferred = preferred;

View File

@@ -33,18 +33,18 @@ limitations under the License.
</test-fixture>
<script>
suite('gr-email-editor tests', function() {
var element;
suite('gr-email-editor tests', () => {
let element;
setup(function(done) {
var emails = [
setup(done => {
const emails = [
{email: 'email@one.com'},
{email: 'email@two.com', preferred: true},
{email: 'email@three.com'},
];
stub('gr-rest-api-interface', {
getAccountEmails: function() { return Promise.resolve(emails); },
getAccountEmails() { return Promise.resolve(emails); },
});
element = fixture('basic');
@@ -52,8 +52,8 @@ limitations under the License.
element.loadData().then(done);
});
test('renders', function() {
var rows = element.$$('table').querySelectorAll('tbody tr');
test('renders', () => {
const rows = element.$$('table').querySelectorAll('tbody tr');
assert.equal(rows.length, 3);
@@ -69,9 +69,9 @@ limitations under the License.
assert.isFalse(element.hasUnsavedChanges);
});
test('edit preferred', function() {
var preferredChangedSpy = sinon.spy(element, '_handlePreferredChange');
var radios = element.$$('table').querySelectorAll('input[type=radio]');
test('edit preferred', () => {
const preferredChangedSpy = sinon.spy(element, '_handlePreferredChange');
const radios = element.$$('table').querySelectorAll('input[type=radio]');
assert.isFalse(element.hasUnsavedChanges);
assert.isNotOk(element._newPreferred);
@@ -92,8 +92,8 @@ limitations under the License.
assert.isTrue(preferredChangedSpy.called);
});
test('delete email', function() {
var buttons = element.$$('table').querySelectorAll('gr-button');
test('delete email', () => {
const buttons = element.$$('table').querySelectorAll('gr-button');
assert.isFalse(element.hasUnsavedChanges);
assert.isNotOk(element._newPreferred);
@@ -110,11 +110,12 @@ limitations under the License.
assert.equal(element._emailsToRemove[0].email, 'email@three.com');
});
test('save changes', function(done) {
var deleteEmailStub = sinon.stub(element.$.restAPI, 'deleteAccountEmail');
var setPreferredStub = sinon.stub(element.$.restAPI,
test('save changes', done => {
const deleteEmailStub =
sinon.stub(element.$.restAPI, 'deleteAccountEmail');
const setPreferredStub = sinon.stub(element.$.restAPI,
'setPreferredAccountEmail');
var rows = element.$$('table').querySelectorAll('tbody tr');
const rows = element.$$('table').querySelectorAll('tbody tr');
assert.isFalse(element.hasUnsavedChanges);
assert.isNotOk(element._newPreferred);
@@ -132,7 +133,7 @@ limitations under the License.
assert.equal(element._emails.length, 2);
// Save the changes.
element.save().then(function() {
element.save().then(() => {
assert.equal(deleteEmailStub.callCount, 1);
assert.equal(deleteEmailStub.getCall(0).args[0], 'email@one.com');