Initial imports::

    >>> import StringIO
    >>> dummy_image = StringIO.StringIO('Dummy Image')
    >>> dummy_file = StringIO.StringIO('Dummy File')

Log in as Manager::

    >>> browser.login(TEST_USER_NAME, TEST_USER_PASSWORD)

Verify that we can create FormFolder under portal but not PFGExtendedMailAdapter::

    >>> browser.open('/')
    >>> browser.getLink(id='formfolder').url.endswith("createObject?type_name=FormFolder")
    True
    >>> browser.getLink(id='pfgextendedmailadapter').url.endswith("createObject?type_name=PFGExtendedMailAdapter")
    Traceback (most recent call last):
    ...
    LinkNotFoundError

Add FormFolder under portal::

    >>> browser.open('/')
    >>> browser.getLink(id='formfolder').click()
    >>> browser.getControl(name='title').value = "Form Folder"
    >>> browser.getControl('Save').click()
    >>> 'form-folder' in portal.objectIds()
    True
    >>> form = portal['form-folder']
    >>> form_url = form.absolute_url()
    >>> form.getId()
    'form-folder'
    >>> form.Title()
    'Form Folder'

Verify that we can create PFGExtendedMailAdapter::

    >>> browser.getLink(id='pfgextendedmailadapter').url.endswith("createObject?type_name=PFGExtendedMailAdapter")
    True

Add PFGExtendedMailAdapter under form::

    >>> browser.getLink(id='pfgextendedmailadapter').click()
    >>> browser.getControl(name='title').value = "Extended Mail Adapter"
    >>> browser.getControl('Save').click()
    >>> 'Extended Mail Adapter' in browser.contents
    True
    >>> adapter = form['extended-mail-adapter']
    >>> adapter_url = adapter.absolute_url()

Check if images and files are not shown in msg_attachments field:

    >>> 'name="msg_attachments:list"' not in browser.contents
    True

Add Image and File content type to adapter::

    >>> url = '%s/createObject?type_name=Image' % adapter_url
    >>> browser.open(url)
    >>> browser.getControl(name='image_file').mech_control.add_file(dummy_image, filename='dummy.gif')
    >>> browser.getControl('Save').click()
    >>> dimage = adapter['dummy.gif']
    >>> dimage_uid = dimage.UID()
    >>> url = '%s/createObject?type_name=File' % adapter_url
    >>> browser.open(url)
    >>> browser.getControl(name='file_file').mech_control.add_file(dummy_file, filename='dummy.pdf')
    >>> browser.getControl('Save').click()
    >>> dfile = adapter['dummy.pdf']
    >>> dfile_uid = dfile.UID()
    >>> browser.open(adapter_url)
    >>> browser.getLink('Edit').click()

Check that images and files are shown in msg_attachments field::

    >>> browser.getControl(name="msg_attachments:list").value = [dimage_uid]
    >>> browser.getControl('Save').click()
    >>> browser.getLink('Edit').click()
