     it "adds atom-panel elements when a new panel is added to the container; removes them when the panels are destroyed", ->
       expect(element.childNodes.length).toBe 0
 
-      panel1 = new Panel({viewRegistry, item: new TestPanelItem(), location: 'left'})
+      panel1 = new Panel({viewRegistry, item: new TestPanelContainerItem(), location: 'left'})
       container.addPanel(panel1)
       expect(element.childNodes.length).toBe 1
 
       expect(element.childNodes[0].tagName).toBe 'ATOM-PANEL'
 
-      panel2 = new Panel({viewRegistry, item: new TestPanelItem(), location: 'left'})
+      panel2 = new Panel({viewRegistry, item: new TestPanelContainerItem(), location: 'left'})
       container.addPanel(panel2)
       expect(element.childNodes.length).toBe 2
 

      modelConstructor: PanelContainer
      viewConstructor: PanelContainerElement
    viewRegistry.addViewProvider
      modelConstructor: TestPanelItem
      viewConstructor: TestPanelItemElement

    container = new PanelContainer({viewRegistry, location: 'left'})
    element = container.getView()
    jasmineContent.appendChild(element)

  it 'has an oritation attribute with value from the model', ->
    expect(element.getAttribute('location')).toBe 'left'

  it 'removes the element when the container is destroyed', ->

describe "PanelContainerElement", ->
  [jasmineContent, element, container, viewRegistry] = []

  class TestPanelContainerItem
    constructior: ->

  class TestPanelContainerItemElement extends HTMLElement
    createdCallback: ->
      @classList.add('test-root')
    setModel: (@model) ->
  TestPanelContainerItemElement = document.registerElement 'atom-test-container-item-element', prototype: TestPanelContainerItemElement.prototype

  beforeEach ->
    jasmineContent = document.body.querySelector('#jasmine-content')
