• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

zopefoundation / grokcore.viewlet / 5776423262

pending completion
5776423262

push

github

web-flow
Config with pure python template (#7)

* Drop support for Python 2.7, 3.5, 3.6.

46 of 54 branches covered (85.19%)

Branch coverage included in aggregate %.

81 of 81 new or added lines in 21 files covered. (100.0%)

580 of 604 relevant lines covered (96.03%)

0.96 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

82.35
/src/grokcore/viewlet/tests/base/viewlet/viewlet_references.py
1
"""
2
A grok.ViewletManager instance has references to the components it was
3
registered for::
4

5
  >>> grok.testing.grok(__name__)
6
  >>> from zope import component
7
  >>> from zope.contentprovider.interfaces import IContentProvider
8
  >>> from zope.publisher.browser import TestRequest
9
  >>> ctxt = AContext()
10
  >>> request = TestRequest()
11
  >>> view = component.getMultiAdapter((ctxt, request), name='with_items')
12
  >>> items_mgr = component.getMultiAdapter(
13
  ...     (ctxt, request, view), IContentProvider, name='view_items_manager')
14
  >>> items_mgr.context is ctxt
15
  True
16
  >>> items_mgr.view is view
17
  True
18
  >>> items_mgr.request is request
19
  True
20

21
Likewise, grok.Viewlet instances have references to the components they're
22
registered for::
23

24
  >>> items_mgr.update()
25
  >>> for viewlet in items_mgr.viewlets:
26
  ...     viewlet.context is ctxt
27
  ...     viewlet.view is view
28
  ...     viewlet.viewletmanager is items_mgr
29
  ...     viewlet.request is request
30
  True
31
  True
32
  True
33
  True
34
  True
35
  True
36
  True
37
  True
38
"""
39

40
import grokcore.viewlet as grok
1✔
41

42

43
class AContext(grok.Context):
1✔
44
    pass
1✔
45

46

47
class ViewWithItems(grok.View):
1✔
48
    grok.name('with_items')
1✔
49

50
    def render(self):
1✔
51
        return ""
×
52

53

54
class ViewItemsManager(grok.ViewletManager):
1✔
55
    grok.name('view_items_manager')
1✔
56

57

58
class ItemOneViewlet(grok.Viewlet):
1✔
59
    grok.name('item_one')
1✔
60

61
    def render(self):
1✔
62
        return "Item one reporting, sir!"
×
63

64

65
class ItemTwoViewlet(grok.Viewlet):
1✔
66
    grok.name('item_two')
1✔
67

68
    def render(self):
1✔
69
        return "Item two reporting, sir!"
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc