Changeset 3169 in products


Ignore:
Timestamp:
Apr 21, 2011 2:53:26 PM (13 years ago)
Author:
vmaksymiv
Message:

pep8 fixes

Location:
quintagroup.analytics/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • quintagroup.analytics/trunk/quintagroup/analytics/browser/views.py

    r3029 r3169  
    1414except ImportError: 
    1515    "Before plon4 we don't have an annotation storage for settings." 
    16     IPortletAssignmentSettings = lambda assignment:{} 
     16    IPortletAssignmentSettings = lambda assignment: {} 
    1717 
    1818from GChartWrapper import VerticalBarStack 
    1919 
    2020from quintagroup.analytics.config import COLORS, OTHER_TYPES, NO_WF_BIND 
     21 
    2122 
    2223class OwnershipByType(BrowserView): 
    2324    MAX = 10 
     25 
    2426    def __init__(self, context, request): 
    2527        self.context = context 
     
    8789        for type_ in types: 
    8890            data.append(self.getContent(type_)) 
    89         other = [self.getContent(t) for t in self.getTypes(all=True)[self.MAX:]] 
     91        other = [self.getContent(t) for t in self.getTypes( 
     92                                                    all=True)[self.MAX:]] 
    9093        if other: 
    9194            data.append([sum(l) for l in zip(*other)]) 
    9295        max_value = max(self.getTotal()) 
    9396        chart = VerticalBarStack(data, encoding='text') 
    94         types = other and types+OTHER_TYPES or types 
     97        types = other and types + OTHER_TYPES or types 
    9598        chart.title('Content ownership by type').legend(*(types)) 
    9699        chart.bar('a', 10, 0).legend_pos("b") 
    97100        chart.color(*COLORS) 
    98         chart.size(800, 375).scale(0,max_value).axes('xy').label(*self.users) 
     101        chart.size(800, 375).scale(0, max_value).axes('xy').label(*self.users) 
    99102        chart.axes.type("y") 
    100         chart.axes.range(0,0,max_value) 
     103        chart.axes.range(0, 0, max_value) 
    101104        return chart.img() 
    102105 
     
    104107class OwnershipByState(BrowserView): 
    105108    MAX = 10 
     109 
    106110    def __init__(self, context, request): 
    107111        self.context = context 
     
    160164                    data.append(l) 
    161165            if len(data) > 0: 
    162                 self.data[NO_WF_BIND] = map(lambda t,d:t-d, self.data[NO_WF_BIND], data) 
     166                self.data[NO_WF_BIND] = map(lambda t, d: t - d, 
     167                                            self.data[NO_WF_BIND], data) 
    163168        return self.data[type_] 
    164169 
     
    181186        max_value = max(self.getTotal()) 
    182187        chart = VerticalBarStack(data, encoding='text') 
    183         chart.title('Content ownership by state').legend(*self.states+[NO_WF_BIND]) 
     188        title = 'Content ownership by state' 
     189        chart.title(title).legend(*self.states + [NO_WF_BIND]) 
    184190        chart.bar('a', 10, 0).legend_pos("b") 
    185191        chart.color(*COLORS) 
    186         chart.size(800, 375).scale(0,max_value).axes('xy').label(*self.users) 
     192        chart.size(800, 375).scale(0, max_value).axes('xy').label(*self.users) 
    187193        chart.axes.type("y") 
    188         chart.axes.range(0,0,max_value) 
     194        chart.axes.range(0, 0, max_value) 
    189195        return chart.img() 
    190196 
     
    192198class TypeByState(BrowserView): 
    193199    MAX = 10 
     200 
    194201    def __init__(self, context, request): 
    195202        self.context = context 
     
    249256                    data.append(l) 
    250257            if len(data) > 0: 
    251                 self.data[NO_WF_BIND] = map(lambda t,d:t-d, self.data[NO_WF_BIND], data) 
     258                self.data[NO_WF_BIND] = map(lambda t, d: t - d, 
     259                                            self.data[NO_WF_BIND], data) 
    252260        return self.data[state] 
    253261 
     
    270278        max_value = max(self.getTotal()) 
    271279        chart = VerticalBarStack(data, encoding='text') 
    272         chart.title('Content type by state').legend(*self.states+[NO_WF_BIND]) 
     280        chart.title('Content type by state').legend( 
     281            *self.states + [NO_WF_BIND]) 
    273282        chart.bar('a', 10, 0).legend_pos("b") 
    274283        chart.color(*COLORS) 
    275         chart.size(800, 375).scale(0,max_value).axes('xy').label(*self.types) 
     284        chart.size(800, 375).scale(0, max_value).axes('xy').label(*self.types) 
    276285        chart.axes.type("y") 
    277         chart.axes.range(0,0,max_value) 
     286        chart.axes.range(0, 0, max_value) 
    278287        return chart.img() 
    279288 
     
    300309            if obj.hasProperty('left_slots'): 
    301310                info['left_slots'] = obj.getProperty('left_slots') 
    302                 self.expressions = self.expressions.union(set(info['left_slots'])) 
     311                self.expressions = self.expressions.union( 
     312                                            set(info['left_slots'])) 
    303313            if obj.hasProperty('right_slots'): 
    304314                info['right_slots'] = obj.getProperty('right_slots') 
    305                 self.expressions = self.expressions.union(set(info['right_slots'])) 
     315                self.expressions = self.expressions.union( 
     316                                            set(info['right_slots'])) 
    306317        return info 
    307318 
    308319    def _walk(self, obj, level=-1): 
    309320        yield self._getInfo(obj) 
    310         if level != 0 and (IFolderish.providedBy(obj) or IBaseFolder.providedBy(obj)): 
     321        if level != 0 and (IFolderish.providedBy(obj) \ 
     322                       or IBaseFolder.providedBy(obj)): 
    311323            for v in obj.contentValues(): 
    312                 for i in self._walk(v, level-1): 
     324                for i in self._walk(v, level - 1): 
    313325                    yield i 
    314326 
     
    321333        infos = [] 
    322334        for i in self._walk(self.context, level): 
    323             if self.DEBUG or i['left_slots'] is not None or i['right_slots'] is not None: 
     335            if self.DEBUG or i['left_slots'] is not None \ 
     336                          or i['right_slots'] is not None: 
    324337                infos.append(i) 
    325338        self.total = len(infos) 
     
    341354        return exprs 
    342355 
     356 
    343357class PropertiesStats(BrowserView): 
    344358    def __init__(self, context, request): 
     
    362376        if IPropertyManager.providedBy(obj): 
    363377            obj = aq_base(obj) 
    364             self.proplist.extend([i for i in obj.propertyIds() if i not in self.proplist]) 
     378            self.proplist.extend( 
     379                    [i for i in obj.propertyIds() if i not in self.proplist]) 
    365380            if obj.hasProperty(self.propname): 
    366381                info['slots'] = obj.getProperty(self.propname) 
     
    368383                    info['slots'] = str(info['slots']) 
    369384                if not isinstance(info['slots'], basestring): 
    370                     self.expressions = self.expressions.union(set(info['slots'])) 
    371                 else: 
    372                     self.expressions = self.expressions.union(set([info['slots']])) 
     385                    self.expressions = self.expressions.union( 
     386                                                set(info['slots'])) 
     387                else: 
     388                    self.expressions = self.expressions.union( 
     389                                                set([info['slots']])) 
    373390        return info 
    374391 
    375392    def _walk(self, obj, level=-1): 
    376393        yield self._getInfo(obj) 
    377         if level != 0 and (IFolderish.providedBy(obj) or IBaseFolder.providedBy(obj)): 
     394        if level != 0 and (IFolderish.providedBy(obj) \ 
     395                       or IBaseFolder.providedBy(obj)): 
    378396            for v in obj.contentValues(): 
    379                 for i in self._walk(v, level-1): 
     397                for i in self._walk(v, level - 1): 
    380398                    yield i 
    381399 
     
    405423        return exprs 
    406424 
     425 
    407426class PortletsStats(BrowserView): 
    408427    def __init__(self, context, request): 
     
    416435 
    417436    def getAssignmentMappingUrl(self, context, manager): 
    418         baseUrl = str(getMultiAdapter((context, self.request), name='absolute_url')) 
     437        baseUrl = str(getMultiAdapter((context, self.request), 
     438                                      name='absolute_url')) 
    419439        return '%s/++contextportlets++%s' % (baseUrl, manager.__name__) 
    420440 
    421441    def getAssignmentsForManager(self, context, manager): 
    422         assignments = getMultiAdapter((context, manager), IPortletAssignmentMapping) 
     442        assignments = getMultiAdapter((context, manager), 
     443                                      IPortletAssignmentMapping) 
    423444        return assignments.values() 
    424445 
    425446    def getPortletsMapping(self, context): 
    426         leftcolumn = getUtility(IPortletManager, name=u'plone.leftcolumn', context=context) 
    427         rightcolumn = getUtility(IPortletManager, name=u'plone.rightcolumn', context=context) 
    428         leftmapping = getMultiAdapter((context, leftcolumn,), IPortletAssignmentMapping) 
    429         rightmapping = getMultiAdapter((context, rightcolumn,), IPortletAssignmentMapping) 
     447        leftcolumn = getUtility(IPortletManager, name=u'plone.leftcolumn', 
     448                                context=context) 
     449        rightcolumn = getUtility(IPortletManager, name=u'plone.rightcolumn', 
     450                                 context=context) 
     451        leftmapping = getMultiAdapter((context, leftcolumn,), 
     452                                      IPortletAssignmentMapping) 
     453        rightmapping = getMultiAdapter((context, rightcolumn,), 
     454                                       IPortletAssignmentMapping) 
    430455        return (leftmapping, rightmapping) 
    431456 
    432457    def getLocalPortletsManager(self, context): 
    433         leftcolumn = getUtility(IPortletManager, name='plone.leftcolumn', context=context) 
    434         rightcolumn = getUtility(IPortletManager, name='plone.rightcolumn', context=context) 
    435         leftmanager = getMultiAdapter((context, leftcolumn,), ILocalPortletAssignmentManager) 
    436         rightmanager = getMultiAdapter((context, rightcolumn,), ILocalPortletAssignmentManager) 
     458        leftcolumn = getUtility(IPortletManager, name='plone.leftcolumn', 
     459                                context=context) 
     460        rightcolumn = getUtility(IPortletManager, name='plone.rightcolumn', 
     461                                 context=context) 
     462        leftmanager = getMultiAdapter((context, leftcolumn,), 
     463                                      ILocalPortletAssignmentManager) 
     464        rightmanager = getMultiAdapter((context, rightcolumn,), 
     465                                       ILocalPortletAssignmentManager) 
    437466        return (leftmanager, rightmanager) 
    438467 
    439468    def getPortletsManager(self, context): 
    440         left = getUtility(IPortletManager, name='plone.leftcolumn', context=context) 
    441         right = getUtility(IPortletManager, name='plone.rightcolumn', context=context) 
     469        left = getUtility(IPortletManager, name='plone.leftcolumn', 
     470                          context=context) 
     471        right = getUtility(IPortletManager, name='plone.rightcolumn', 
     472                           context=context) 
    442473        return (left, right) 
    443474 
     
    458489 
    459490            data.append({ 
    460                 'title'      : assignments[idx].title, 
    461                 'editview'   : editviewName, 
    462                 'visible'    : settings.get('visible', True), 
     491                'title': assignments[idx].title, 
     492                'editview': editviewName, 
     493                'visible': settings.get('visible', True), 
    463494                }) 
    464495        return data 
     
    481512        #leftmanager, rightmanager = self.getLocalPortletsManager(obj) 
    482513        #info['left_slots'] = self.getPortlets(obj, leftmapping, leftmanager) 
    483         #info['right_slots'] = self.getPortlets(obj, rightmapping, rightmanager) 
     514        #info['right_slots'] = self.getPortlets(obj, rightmapping,rightmanager) 
    484515        lass = self.getAssignmentsForManager(obj, left) 
    485516        rass = self.getAssignmentsForManager(obj, right) 
     
    489520        prass = self.portlets_for_assignments(rass, right, rurl) 
    490521        #print obj, plass, prass 
    491         info['left_slots'] = plass #[i['title'] for i in plass] 
    492         info['right_slots'] = prass #[i['title'] for i in prass] 
     522        info['left_slots'] = plass  # [i['title'] for i in plass] 
     523        info['right_slots'] = prass  # [i['title'] for i in prass] 
    493524        return info 
    494525 
     
    498529        except: 
    499530            pass 
    500         if level != 0 and (IFolderish.providedBy(obj) or IBaseFolder.providedBy(obj)): 
     531        if level != 0 and (IFolderish.providedBy(obj) \ 
     532                       or IBaseFolder.providedBy(obj)): 
    501533            for v in obj.contentValues(): 
    502                 for i in self._walk(v, level-1): 
     534                for i in self._walk(v, level - 1): 
    503535                    yield i 
    504536 
     
    511543        infos = [] 
    512544        for i in self._walk(self.context, level): 
    513             if self.DEBUG or i['left_slots'] is not None or i['right_slots'] is not None: 
     545            if self.DEBUG or i['left_slots'] is not None \ 
     546                          or i['right_slots'] is not None: 
    514547                infos.append(i) 
    515548        self.total = len(infos) 
  • quintagroup.analytics/trunk/quintagroup/analytics/config.py

    r2999 r3169  
    1 COLORS = ['669933', 'CC9966', '993300', 'FF6633', 'E8E4E3', 'A9A486', 'DCB57E', 'FFCC99', '996633', '333300', '00FF00'] 
     1COLORS = ['669933', 'CC9966', '993300', 'FF6633', 'E8E4E3', 'A9A486', 
     2          'DCB57E', 'FFCC99', '996633', '333300', '00FF00'] 
    23OTHER_TYPES = ['Other types'] 
    34NO_WF_BIND = 'No workflow' 
  • quintagroup.analytics/trunk/quintagroup/analytics/tests.py

    r3043 r3169  
    1717 
    1818ptc.setupPloneSite() 
     19 
    1920 
    2021class Installed(PloneSite): 
     
    4142            pass 
    4243 
     44 
    4345class SetUpContent(Installed): 
    4446 
    4547    max = 10 
    4648    types_ = ['Document', 'Event', 'Folder'] 
    47     users = [('user%s'%i, 'user%s'%i, 'Member', None) 
     49    users = [('user%s' % i, 'user%s' % i, 'Member', None) 
    4850             for i in xrange(max)] 
    4951 
     
    7173                user = user.__of__(uf) 
    7274            newSecurityManager(None, user) 
    73             for i in xrange(users.index(u)+cls.max): 
    74                 map(folder.invokeFactory, cls.types_, [t+str(i) for t in cls.types_]) 
     75            for i in xrange(users.index(u) + cls.max): 
     76                map(folder.invokeFactory, cls.types_, 
     77                    [t + str(i) for t in cls.types_]) 
    7578        transaction.commit() 
    76  
    7779 
    7880    @classmethod 
     
    8789        pass 
    8890 
     91 
    8992class TestCase(ptc.PloneTestCase): 
    9093    layer = Installed 
     
    99102        """This test validates control panel action. """ 
    100103        control_panel = self.portal.portal_controlpanel 
    101         self.assert_('QAnalytics' in [a.id for a in control_panel.listActions()], 
    102                      "Configlet for quintagroup.analitycs isn't registered.") 
     104        self.assert_( 
     105                'QAnalytics' in [a.id for a in control_panel.listActions()], 
     106                "Configlet for quintagroup.analitycs isn't registered.") 
    103107 
    104108    def test_OwnershipByType(self): 
     
    147151        self.assert_(view, "Properties Stats view isn't registered") 
    148152 
    149  
    150153    def test_PortletsStats(self): 
    151154        """ This test validates registration of 
     
    156159 
    157160        self.assert_(view, "Portlets Stats view isn't registered") 
     161 
    158162 
    159163class TestOwnershipByType(TestCase): 
     
    171175        users = [u[0] for u in self.layer.users] 
    172176        users.reverse() 
    173         self.assert_(False not in map(lambda u1, u2:u1==u2, 
     177        self.assert_(False not in map(lambda u1, u2: u1 == u2, 
    174178                     users, self.view.getUsers())) 
    175179 
     
    190194        data.reverse() 
    191195        types = [i[0] for i in data] 
    192         self.assert_(False not in map(lambda t1, t2:t1==t2, 
     196        self.assert_(False not in map(lambda t1, t2: t1 == t2, 
    193197                     self.view.getTypes(), types)) 
    194198 
     
    204208        for type_ in self.layer.types_: 
    205209            self.assert_(False not in \ 
    206             map(lambda i, j:i==j, [len(self.pc(portal_type=type_, Creator=user)) 
     210            map(lambda i, j: i == j, [len(self.pc(portal_type=type_, 
     211                                               Creator=user)) 
    207212                                   for user in self.view.getUsers()], 
    208213                                  self.view.getContent(type_))) 
     
    216221             19.0,18.0,17.0,16.0,15.0,14.0,13.0,12.0,11.0,10.0|0.0, 
    217222             0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0|0.0,0.0,0.0,0.0, 
    218              0.0,0.0,0.0,0.0,0.0,0.0&chxr=0,0,57&chco=669933,cc9966, 
    219              993300,ff6633,e8e4e3,a9a486,dcb57e,ffcc99,996633,333300,00ff00& 
     223             0.0,0.0,0.0,0.0,0.0,0.0&chxr=0,0,57& 
     224             chco=669933,cc9966,993300,ff6633,e8e4e3,a9a486, 
     225             dcb57e,ffcc99,996633,333300,00ff00& 
    220226             chl=user9|user8|user7|user6|user5|user4|user3|user2|user1| 
    221227             user0&chbh=a,10,0&chs=800x375&cht=bvs& 
     
    239245 
    240246        self.loginAsPortalOwner() 
    241         self.assertEqual(*map(lambda s:''.join(s.split()), 
     247        self.assertEqual(*map(lambda s: ''.join(s.split()), 
    242248                              [chart_tag, self.view.getChart()])) 
     249 
    243250 
    244251class TestOwnershipByState(TestCase): 
     
    258265        users = [u[0] for u in self.layer.users] 
    259266        users.reverse() 
    260         self.assert_(False not in map(lambda u1, u2:u1==u2, 
     267        self.assert_(False not in map(lambda u1, u2: u1 == u2, 
    261268                     users, self.view.getUsers())) 
    262269 
    263270    def test_getStates(self): 
    264271        """ Tests method that returns ordered list of states.""" 
    265         self.assert_(False not in map(lambda s1, s2:s1==s2, 
     272        self.assert_(False not in map(lambda s1, s2: s1 == s2, 
    266273                     ['private', 'published'], self.view.getStates())) 
    267274 
     
    277284        for state in self.states: 
    278285            self.assert_(False not in \ 
    279             map(lambda i, j:i==j,[len(self.pc(review_state=state, Creator=user)) 
     286            map(lambda i, j: i == j, [len(self.pc(review_state=state, 
     287                                              Creator=user)) 
    280288                                  for user in self.view.getUsers()], 
    281289                                 self.view.getContent(state))) 
     
    294302                       published|No+workflow&chdlp=b"/>""" 
    295303        self.loginAsPortalOwner() 
    296         self.assertEqual(*map(lambda s:''.join(s.split()), 
     304        self.assertEqual(*map(lambda s: ''.join(s.split()), 
    297305                              [chart_tag, self.view.getChart()])) 
     306 
    298307 
    299308class TestTypeByState(TestCase): 
     
    323332        data.reverse() 
    324333        types = [i[0] for i in data] 
    325         self.assert_(False not in map(lambda t1, t2:t1==t2, types, 
     334        self.assert_(False not in map(lambda t1, t2: t1 == t2, types, 
    326335                                      self.view.getTypes())) 
    327336 
    328337    def test_getStates(self): 
    329338        """ Tests method that returns ordered list of states.""" 
    330         self.assert_(False not in map(lambda s1, s2:s1==s2, 
     339        self.assert_(False not in map(lambda s1, s2: s1 == s2, 
    331340                     ['private', 'published'], self.view.getStates())) 
    332341 
     
    342351        for state in self.states: 
    343352            self.assert_(False not in \ 
    344             map(lambda i, j:i==j, [len(self.pc(portal_type=type_, 
     353            map(lambda i, j: i == j, [len(self.pc(portal_type=type_, 
    345354                                               review_state=state)) 
    346355                                   for type_ in self.view.getTypes()], 
     
    373382 
    374383        self.loginAsPortalOwner() 
    375         self.assertEqual(*map(lambda s:''.join(s.split()), 
     384        self.assertEqual(*map(lambda s: ''.join(s.split()), 
    376385                              [chart_tag, self.view.getChart()])) 
     386 
    377387 
    378388class LegacyPortlets(TestCase): 
    379389    """Test all legasy_portlets view methods.""" 
    380390 
    381  
    382391    def afterSetUp(self): 
    383392        self.view = queryMultiAdapter((self.portal, self.portal.REQUEST), 
     
    395404        # this is true for Plone 4 
    396405        self.assert_(self.view.getAllPortletExpressions() == []) 
     406 
    397407 
    398408class TestPropertiesStats(TestCase): 
     
    429439        mapping.restrictedTraverse('+/' + portlet.addview)() 
    430440 
    431         plone_portlets_info = filter(lambda info:info['path'] == '/plone', 
     441        plone_portlets_info = filter(lambda info: info['path'] == '/plone', 
    432442                                     self.view.getPropsList()) 
    433443        lslots = plone_portlets_info[0]['left_slots'] 
  • quintagroup.analytics/trunk/setup.py

    r2880 r3169  
    99      long_description=open("README.txt").read() + "\n" + 
    1010                       open(os.path.join("docs", "HISTORY.txt")).read(), 
    11       # Get more strings from http://www.python.org/pypi?%3Aaction=list_classifiers 
    1211      classifiers=[ 
    1312        "Framework :: Plone", 
Note: See TracChangeset for help on using the changeset viewer.