    =================
    SchoolTool Report
    =================

    A manager logs in:

        >>> manager = Browser('manager', 'schooltool')

    And goes to the report referece view:

        >>> manager.getLink('Manage').click()
        >>> manager.getLink('Reports').click()

    The view has a table with three columns:

        >>> manager.printQuery('//table[@class="container"]//th')
Category Title Description We registered some mock report adapters to test the view's ability to find them: >>> manager.printQuery('//table[@class="container"]//td/a') Group Mock Group Report School Year Mock SchoolYear Report Section Mock Section Report Student Mock Student Report Term Mock Term Report
    The non-person references have no href set becuase there isn't any current term.

        >>> from schooltool.app.browser.ftests import setup
        >>> setup.setUpBasicSchool()
        >>> setup.addCourse('Math I', '2005-2006')
        >>> setup.addSection('Math I', '2005-2006', 'Fall',
        ...                  instructors=[],
        ...                  members=[])

    Now the same view will have better hrefs:

        >>> manager.getLink('Manage').click()
        >>> manager.getLink('Reports').click()
        >>> manager.printQuery('//table[@class="container"]//td/a')
Group Mock Group Report School Year Mock SchoolYear Report Section Mock Section Report Student Mock Student Report Term Mock Term Report
    Now we visit the various context types and see that the registered report
    request adapters are reflected in the report request views.

        >>> manager.getLink('Manage').click()
        >>> manager.getLink('Persons').click()
        >>> manager.getLink('Manager').click()
        >>> manager.getLink('Reports').click()
        >>> manager.printQuery('//div[@id="content-body"]//a')
Mock Student Report
        >>> manager.getLink('2005-2006').click()
        >>> manager.getLink('Groups').click()
        >>> manager.getLink('Students').click()
        >>> manager.getLink('Reports').click()
        >>> manager.printQuery('//div[@id="content-body"]//a')
Mock Group Report
        >>> manager.getLink('2005-2006').click()
        >>> manager.getLink('Reports').click()
        >>> manager.printQuery('//div[@id="content-body"]//a')
Mock SchoolYear Report
        >>> manager.getLink('2005-2006').click()
        >>> manager.getLink('Fall').click()
        >>> manager.getLink('Reports').click()
        >>> manager.printQuery('//div[@id="content-body"]//a')
Mock Term Report
        >>> manager.getLink('2005-2006').click()
        >>> manager.getLink('Fall').click()
        >>> manager.getLink('Sections').click()
        >>> manager.getLink('Math I (1)').click()
        >>> manager.getLink('Reports').click()
        >>> manager.printQuery('//div[@id="content-body"]//a')
Mock Section Report