Log in as Manager::

    >>> browser.login(TEST_USER_NAME, TEST_USER_PASSWORD)

Make Shopping Site::

    >>> browser.open('/')
    >>> browser.getLink('Make Shopping Site').click()

Add two Articles::

    >>> browser.open('/++add++collective.cart.core.Article')
    >>> browser.getControl(name="form.widgets.IDublinCore.title").value = 'Ärticle1'
    >>> browser.getControl(name="form.widgets.IDublinCore.description").value = 'Descriptiön of Ärticle1'
    >>> browser.getControl(name="form.buttons.save").click()
    >>> browser.getLink('Publish').click()

    >>> browser.open('/++add++collective.cart.core.Article')
    >>> browser.getControl(name="form.widgets.IDublinCore.title").value = 'Ärticle2'
    >>> browser.getControl(name="form.widgets.IDublinCore.description").value = 'Descriptiön of Ärticle2'
    >>> browser.getControl(name="form.buttons.save").click()
    >>> browser.getLink('Publish').click()

Add both articles to cart::

    >>> browser.open('/article1')
    >>> browser.getControl(name="form.buttons.AddToCart").click()
    >>> browser.open('/article2')
    >>> browser.getControl(name="form.buttons.AddToCart").click()

Go to cart::

    >>> browser.open('/@@cart')
    >>> print browser.bycss('.documentFirstHeading')
    --- 1 ---
    <h1 class="documentFirstHeading">Cart</h1>

    >>> print browser.bycss('#cart-is-empty')

    >>> print browser.bycss('.listing')
    --- 1 ---
    <table class="listing"><thead><tr><th>
    Name
    </th>
    <th>
    Remove
    </th>
    </tr></thead><tbody><tr><td class="name">
    <a href="http://nohost/plone/article1">&#196;rticle1</a>
    </td>
    <td class="remove">
    <button class="standalone" name="form.buttons.RemoveArticle" type="submit" value="...">
    Remove
    </button>
    </td>
    </tr><tr><td class="name">
    <a href="http://nohost/plone/article2">&#196;rticle2</a>
    </td>
    <td class="remove">
    <button class="standalone" name="form.buttons.RemoveArticle" type="submit" value="...">
    Remove
    </button>
    </td>
    </tr></tbody></table>

Remove Ärticle1::

    >>> browser.getControl(name="form.buttons.RemoveArticle", index=0).click()
    >>> print browser.bycss('#cart-is-empty')

    >>> print browser.bycss('.listing')
    --- 1 ---
    <table class="listing"><thead><tr><th>
    Name
    </th>
    <th>
    Remove
    </th>
    </tr></thead><tbody><tr><td class="name">
    <a href="http://nohost/plone/article2">&#196;rticle2</a>
    </td>
    <td class="remove">
    <button class="standalone" name="form.buttons.RemoveArticle" type="submit" value="...">
    Remove
    </button>
    </td>
    </tr></tbody></table>


Remove Ärticle2::

    >>> browser.getControl(name="form.buttons.RemoveArticle").click()
    >>> print browser.bycss('#cart-is-empty')
    --- 1 ---
    <p id="cart-is-empty">
    Cart is empty.
    </p>

    >>> print browser.bycss('.listing')

Log out and try the same thing with anonymous::

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

Add both articles to cart::

    >>> browser.open('/article1')
    >>> browser.getControl(name="form.buttons.AddToCart").click()
    >>> browser.open('/article2')
    >>> browser.getControl(name="form.buttons.AddToCart").click()

Go to cart::

    >>> browser.open('/@@cart')
    >>> print browser.bycss('.documentFirstHeading')
    --- 1 ---
    <h1 class="documentFirstHeading">Cart</h1>

    >>> print browser.bycss('#cart-is-empty')

    >>> print browser.bycss('.listing')
    --- 1 ---
    <table class="listing"><thead><tr><th>
    Name
    </th>
    <th>
    Remove
    </th>
    </tr></thead><tbody><tr><td class="name">
    <a href="http://nohost/plone/article1">&#196;rticle1</a>
    </td>
    <td class="remove">
    <button class="standalone" name="form.buttons.RemoveArticle" type="submit" value="...">
    Remove
    </button>
    </td>
    </tr><tr><td class="name">
    <a href="http://nohost/plone/article2">&#196;rticle2</a>
    </td>
    <td class="remove">
    <button class="standalone" name="form.buttons.RemoveArticle" type="submit" value="...">
    Remove
    </button>
    </td>
    </tr></tbody></table>

Remove Ärticle1::

    >>> browser.getControl(name="form.buttons.RemoveArticle", index=0).click()
    >>> print browser.bycss('#cart-is-empty')

    >>> print browser.bycss('.listing')
    --- 1 ---
    <table class="listing"><thead><tr><th>
    Name
    </th>
    <th>
    Remove
    </th>
    </tr></thead><tbody><tr><td class="name">
    <a href="http://nohost/plone/article2">&#196;rticle2</a>
    </td>
    <td class="remove">
    <button class="standalone" name="form.buttons.RemoveArticle" type="submit" value="...">
    Remove
    </button>
    </td>
    </tr></tbody></table>

Remove Ärticle2::

    >>> browser.getControl(name="form.buttons.RemoveArticle").click()
    >>> print browser.bycss('#cart-is-empty')
    --- 1 ---
    <p id="cart-is-empty">
    Cart is empty.
    </p>

    >>> print browser.bycss('.listing')
