FIX: Small fixes to enable better testing of components

This commit is contained in:
Robin Ward 2017-09-13 10:33:21 -04:00
parent 28148197d6
commit e5db126a8e
2 changed files with 7 additions and 5 deletions

View File

@ -15,7 +15,7 @@ export default Ember.Component.extend({
@computed @computed
showAdminButton() { showAdminButton() {
return !this.site.mobileView && this.currentUser.get('canManageTopic'); return !this.site.mobileView && this.currentUser && this.currentUser.get('canManageTopic');
}, },
@computed('topic.message_archived') @computed('topic.message_archived')

View File

@ -4,7 +4,7 @@ import Category from 'discourse/models/category';
export default Ember.Component.extend(bufferedRender({ export default Ember.Component.extend(bufferedRender({
classNames: ['topic-status-info'], classNames: ['topic-status-info'],
delayedRerender: null, _delayedRerender: null,
rerenderTriggers: [ rerenderTriggers: [
'statusType', 'statusType',
@ -58,12 +58,14 @@ export default Ember.Component.extend(bufferedRender({
buffer.push('</h3>'); buffer.push('</h3>');
// TODO Sam: concerned this can cause a heavy rerender loop // TODO Sam: concerned this can cause a heavy rerender loop
this.set('delayedRerender', Em.run.later(this, this.rerender, rerenderDelay)); if (!Ember.testing) {
this._delayedRerender = Ember.run.later(this, this.rerender, rerenderDelay);
}
}, },
willDestroyElement() { willDestroyElement() {
if( this.delayedRerender ) { if (this._delayedRerender) {
Em.run.cancel(this.get('delayedRerender')); Em.run.cancel(this._delayedRerender);
} }
}, },