Personal tools
You are here: Home Eggs uwosh.librarytypes

uwosh.librarytypes

Custom Library Archetypes

Current release
uwosh.librarytypes 0.1.5

Released Oct 26, 2012

Download file Get uwosh.librarytypes for All platforms (146.8 kB)
uwosh.librarytypes-0.1.5.zip

Project Description

Change history

Changelog

0.1.5
  • Removed individual staff portlets
  • Added Embed Button for videos.
0.1.4b
  • Added resolveuid/ to SimpleImage
0.1.3b
  • Adjusted Department Contact Portlet.
0.1.2b
  • Fixed Image Upload Bug.
0.1.1b
  • Fixed fax number bug.
  • Add more functionality to deparmental portlets.
0.1.0b
  • Uncovered Plone Bug in BrowserView by mistake.
  • Changed method "factory" in imageUpload class. This causes plone zmi component to puke.
  • Adjusted Staff Archetype to match the Professional Staff Page Policy document that was just created.
0.0.9a
  • Fixed relative link issue.
0.0.8a
  • Fixed staff image.
  • Added new TinyMCE button. Simple Image Upload.
0.0.7a
  • New two column layout for Staff views.
  • Fixed public/private lookup bug.
0.0.6a
  • Two column layout for Staff views.
  • Directory now sorts by lastname.
0.0.5a
  • Adjust layout of staff pages.
  • Allows for multiple chats on one page now.
0.0.4a
  • Added new TinyMCE Tool called Voyager Catalog Link
  • Fixed Library Staff Portlet bug, "duplicate vocabulary error..."
  • Fixed Library Staff Directory bug, skipped middle person in directory
0.0.3a
  • Added LibraryStaff Content Type
  • Added LibraryStaff views (basic, directory structure, profiles)
  • Added tal_rendering from input fields.
  • Added a memoize hook.
0.0.2a
  • First egg never seems to work. Same as comments in 0.0.1a
0.0.1a
  • DO NOT INSTALL THIS RELEASE!
  • Initial Release
  • Migrates any existing uwosh.librarylinks to this product
  • This is now the home of librarylinks
0.0.1 (xxxx-xx-xx)
  • Created recipe with ZopeSkel [David Hietpas]

Detailed Documentation

Introduction

This is a full-blown functional test. The emphasis here is on testing what the user may input and see, and the system is largely tested as a black box. We use PloneTestCase to set up this test as well, so we have a full Plone site to play with. We can inspect the state of the portal, e.g. using self.portal and self.folder, but it is often frowned upon since you are not treating the system as a black box. Also, if you, for example, log in or set roles using calls like self.setRoles(), these are not reflected in the test browser, which runs as a separate session.

Being a doctest, we can tell a story here.

First, we must perform some setup. We use the testbrowser that is shipped with Five, as this provides proper Zope 2 integration. Most of the documentation, though, is in the underlying zope.testbrower package.

>>> from Products.Five.testbrowser import Browser
>>> browser = Browser()
>>> portal_url = self.portal.absolute_url()

The following is useful when writing and debugging testbrowser tests. It lets us see all error messages in the error_log.

>>> self.portal.error_log._ignored_exceptions = ()

With that in place, we can go to the portal front page and log in. We will do this using the default user from PloneTestCase:

>>> from Products.PloneTestCase.setup import portal_owner, default_password
>>> browser.open(portal_url)

We have the login portlet, so let's use that.

>>> browser.getControl(name='__ac_name').value = portal_owner
>>> browser.getControl(name='__ac_password').value = default_password
>>> browser.getControl(name='submit').click()

Here, we set the value of the fields on the login form and then simulate a submit click.

We then test that we are still on the portal front page:

>>> browser.url == portal_url
True

And we ensure that we get the friendly logged-in message:

>>> "You are now logged in" in browser.contents
True

-- extra stuff goes here --

Contributors

David Hietpas, Author