class Teabag.Reporters.HTML.SuiteView extends Teabag.Reporters.BaseView
viewId = 0
constructor: (@suite, @reporter) ->
@views = @reporter.views
@suite.viewId = viewId += 1
@views.suites[@suite.viewId] = @
@suite = new Teabag.Reporters.NormalizedSuite(suite)
super
build: ->
super("suite")
@el.innerHTML = """
"""
@parentView = @buildParent()
@parentView.append(@el)
buildParent: ->
parent = @suite.parent
return @reporter unless parent
if parent.viewId
@views.suites[parent.viewId]
else
view = new Teabag.Reporters.HTML.SuiteView(parent, @reporter)
@views.suites[view.suite.viewId] = view
append: (el) ->
super(@ol = @createEl("ol")) unless @ol
@ol.appendChild(el)
updateState: (state) ->
return if @state == "failed"
@el.className = "#{@el.className.replace(/\s?state-\w+/, "")} state-#{state}"
@parentView.updateState?(state)
@state = state