Metadata-Version: 1.1
Name: redturtle.portlets.inspector
Version: 1.0.0
Summary: Redturtle Portlets Inspector
Home-page: http://plone.org/products/redturtle.portlets.inspector
Author: RedTurtle Technology
Author-email: sviluppoplone@redturtle.it
License: GPL
Description: redturtle.portlets.inspector
        ============================
        
        redturtle.portlets.inspector is a report view to check the portlets inside a
        Plone site.
        
        The report view
        ---------------
        This product gives you a view called `@@inspect-portlets`.
        To visit this view you have to be manager.
        
        You can call it on the root of your Plone site, e.g.:
         - http://localhost:8080/Plone-site-id/@@inspect-portlets
        or in restrict your analysis in a subsection of your site, e.g.:
         - http://localhost:8080/Plone-site-id/sub/section/@@inspect-portlets
        
        For a newly created Plone site it will output:
        ```
        {'/Plone': {u'plone.leftcolumn': [('<Assignment at ++contextportlets++plone.leftcolumn/navigation>',
                                           "<class 'plone.app.portlets.portlets.navigation.Assignment'>")],
                    u'plone.rightcolumn': [('<Assignment at ++contextportlets++plone.rightcolumn/news>',
                                            "<class 'plone.app.portlets.portlets.news.Assignment'>"),
                                           ('<Assignment at ++contextportlets++plone.rightcolumn/events>',
                                            "<class 'plone.app.portlets.portlets.events.Assignment'>")]}}
        ```
        
        Installation
        ------------
        Just add this egg to your instance eggs.
        ```
        eggs+=
            redturtle.portlets.inspector
        ```
        
        If your are using an older version of Plone (before 3.3), you will also have
        to add this egg to the zcml.
        ```
        zcml+=
            redturtle.portlets.inspector
        ```
        
        Why you want it
        ---------------
        You may want to check this view for several reasons:
         - you want to remove a product that provides a portlet and want to remove all 
           the related portlets in your site otherwise it will break
         - you want to analyze a Plone site before migrating it
         - you are simply curious
        
        Detailed Documentation
        **********************
        
        Introduction
        ============
        
        Counts the portlets in a site
        
        
        Test suite
        ==========
        
        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
        
        Because add-on themes or products may remove or hide the login portlet, this test will use the login form that comes with plone.  
        
            >>> browser.open(portal_url + '/login_form')
            >>> 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 ensure that we get the friendly logged-in message:
        
            >>> "You are now logged in" in browser.contents
            True
        
        Finally, let's return to the front page of our site before continuing
        
            >>> browser.open(portal_url)
            
        Then we check the inspect-portlets view    
            >>> browser.open(portal_url+'/@@inspect-portlets')
        
        -*- extra stuff goes here -*-
        
        
        Contributors
        ************
        
        "", Author
        
        
        Download
        ********
        
Keywords: plone portlets
Platform: UNKNOWN
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 3.2
Classifier: Framework :: Plone :: 3.3
Classifier: Framework :: Plone :: 4.0
Classifier: Framework :: Plone :: 4.1
Classifier: Framework :: Plone :: 4.2
Classifier: Framework :: Plone :: 4.3
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
