UNPKG

siesta-lite

Version:

Stress-free JavaScript unit testing and functional testing tool, works in NodeJS and browsers

76 lines (59 loc) 2.54 kB
/* Siesta 5.6.1 Copyright(c) 2009-2022 Bryntum AB https://bryntum.com/contact https://bryntum.com/products/siesta/license */ Ext.define('Siesta.Project.Browser.UI.AssertionTreeColumn', { extend : 'Ext.tree.Column', alias : 'widget.assertiontreecolumn', imgWithOffsetText : '<img src="{1}" class="{0}" style="left:{2}px" />', tdCls : 'tr-tree-column', resultTpl : null, dataIndex : 'folderStatus', menuDisabled : true, sortable : false, width : 500, descriptionTpl : '<span class="assertion-text">{text}</span>', initComponent : function () { this.descriptionTpl = this.descriptionTpl instanceof Ext.XTemplate ? this.descriptionTpl : new Ext.XTemplate(this.descriptionTpl); Ext.apply(this, { scope : this }); this.callParent(arguments); }, renderer : function (value, metaData, record, rowIndex, colIndex, store) { var retVal = ''; var result = record.data.result; var annotation = result.annotation; if (result instanceof Siesta.Result.Summary) { return record.data.result.description.join('<br>'); } retVal = this.descriptionTpl.apply({ text : Ext.String.htmlEncode(result.isWarning ? 'WARN: ' + result.description : result.description) }); if (annotation) { retVal += '<pre title="' + annotation.replace(/"/g, "'") + '" style="margin-left:' + record.data.depth * 16 + 'px" class="tr-assert-row-annotation">' + Ext.String.htmlEncode(annotation).replace('[code]', '<code>').replace('[/code]', '</code>'); + '</pre>'; } return retVal; }, // HACK OVERRIDE treeRenderer : function (value, metaData, record) { var result = record.getResult() if (result instanceof Siesta.Result.Assertion) { if (result.isWaitFor) record.data.iconCls = result.completed ? 'fa-clock-o' : 'fa-spinner fa-spin' else if (result.isException) record.data.iconCls = 'fa-flag'; else record.data.iconCls = result.passed ? 'fa-check' : 'fa-bug' } else if (result instanceof Siesta.Result.SubTest) { if( record.get('folderStatus') === 'working') { record.data.iconCls = 'fa-spinner fa-spin'; } else { record.data.iconCls = ''; } } return this.callParent(arguments); } });