Initial imports and defines.
----
    >>> cfolder = portal.cfolder
    >>> cfolder_url = cfolder.absolute_url()
    >>> document01 = portal.document01
    >>> document01_url = document01.absolute_url()
    >>> document02 = portal.document02
    >>> document02_url = document02.absolute_url()
    >>> cart_url = '%s/@@cart' % portal_url

Log in as the portal owner.
---------------------------
    >>> from plone.app.testing import TEST_USER_NAME, TEST_USER_PASSWORD
    >>> browser.login(TEST_USER_NAME, TEST_USER_PASSWORD)

    >>> browser.open(portal_url)
    >>> browser.getLink('Site Setup').click()

    >>> try:
    ...     browser.getLink('Cart Config').click()
    ... except:
    ...     print portal.error_log.getLogEntries()[0]['tb_text']
    ...     import pdb; pdb.set_trace()

    >>> cfolder.next_incremental_cart_id
    1

    >>> browser.open(cart_url)
    >>> 'Cart is Empty.' in browser.contents
    True
    >>> browser.open(document01_url)
    >>> browser.getControl(name="form.button.AddToCart").click()

    >>> try:
    ...     browser.open(cart_url)
    ... except:
    ...     print portal.error_log.getLogEntries()[0]['tb_text']
    ...     import pdb; pdb.set_trace()

    >>> browser.open(cart_url)
    >>> 'Cart is Empty.' in browser.contents
    False

    >>> cfolder.next_incremental_cart_id
    2

    >>> browser.open(document01_url)
    >>> browser.getControl(name="form.button.AddToCart").click()
    >>> browser.open(cart_url)
    >>> 'Cart is Empty.' in browser.contents
    False

    >>> cfolder.next_incremental_cart_id
    2

    >>> browser.open(document02_url)
    >>> browser.getControl(name="form.button.AddToCart").click()
    >>> browser.open(cart_url)
    >>> 'Cart is Empty.' in browser.contents
    False

    >>> cfolder.next_incremental_cart_id
    2

Log out
----
    >>> browser.getLink('Log out').click()

Go to Product01
----
    >>> cfolder.next_incremental_cart_id
    2
    >>> browser.open(document01_url)
    >>> 'value="18"' in browser.contents
    True
    >>> 'value="19"' in browser.contents
    False
    >>> browser.getControl(name="quantity", index=0).value = ['2']
    >>> browser.getControl(name="form.button.AddToCart").click()
    >>> cfolder['1']
    <Cart at /plone/cfolder/1>
    >>> cfolder.next_incremental_cart_id
    3

Go to cfolder
----
    >>> cart = cfolder['2']
    >>> cart2_url = cart.absolute_url()
    >>> browser.open(cart2_url)
    >>> product1 = cart['1']

Go to cart
----
    >>> browser.open(cart_url)
    >>> 'value="18"' in browser.contents
    True
    >>> 'value="19"' in browser.contents
    False
    >>> '10.00 EUR' in browser.contents
    True
    >>> 'value="2" selected="selected"' in browser.contents
    True
    >>> '20.00 EUR' in browser.contents
    True

Go to Document02 and add to cart.
----
    >>> browser.open(document02_url)
    >>> 'value="100"' in browser.contents
    True
    >>> 'value="101"' in browser.contents
    False
    >>> browser.getControl(name="quantity", index=0).value = ['3']
    >>> browser.getControl(name="form.button.AddToCart").click()

Go to cart
----
    >>> browser.open(cart_url)
    >>> '10.00 EUR' in browser.contents
    True
    >>> 'value="2" selected="selected"' in browser.contents
    True
    >>> '20.00 EUR' in browser.contents
    True
    >>> '5.00 EUR' in browser.contents
    True
    >>> 'value="3" selected="selected"' in browser.contents
    True
    >>> 'value="100"' in browser.contents
    True
    >>> 'value="101"' in browser.contents
    False
    >>> '15.00 EUR' in browser.contents
    True
    >>> '35.00 EUR' in browser.contents
    True

Go To Next Step
----
    >>> browser.getControl(name="form.button.NextStep").click()
