 
       it 'should have help text', ->
         expect(page.help, 'The help is missing').to.eventually.exist
-  
+
       it 'should display a contact email link', ->
         pat = /a href="mailto:\w+@ohsu.edu"/
-        expect(page.contact(), 'The email address is missing')
+        expect(page.contactInfo, 'The email address is missing')
           .to.eventually.match(pat)
 
     # The page main body test cases.
     describe 'Imaging Profile', ->
-      chart = null
-      tablePanel = null
-
-      before ->
-        page.modelingChart().then (elt) ->
-          chart = elt
-        page.imagingProfileTablePanel().then (elt) ->
-          tablePanel = elt
-
       describe 'Dateline', ->
         # Note: this is as deep as the chart can be tested,
         # since the chart SVG content is not visible to the

            ethnicity: 'ethnicity'

      addComponentTable = (prop, selector, bindings) ->
        panel[prop] = -> selectTableWithBindings(selector, bindings)

      for prop, spec of componentTables
        addComponentTable(prop, spec.selector, spec.bindings)

    # Find the clinical profile panel.
    @select('.qi-clinical-profile').then (panel) =>
      if panel?
        # Add the component table functions.
        addComponentTables(panel)
        # Apply the function to the panel.
        fn(panel) if fn?
      panel



            sbjBinding = 'subject.' + binding
            # Make the field element search selector.
            selector = By.binding(sbjBinding)
            findText(selector)

        addTextField(prop, binding) for prop, binding of bindings

      # Find the table.
      #
      # Note: A better solution is to perform the field selects below
      # against the table rather than the page. However,
      # panel.findElement('qi-demographics-table')
      # results in an error, since the untyped panel object has most, but
      # not all, of the WebElement function properties. In particular, it
