-
Notifications
You must be signed in to change notification settings - Fork 22
/
test_widgets.py
37 lines (25 loc) · 1.13 KB
/
test_widgets.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import unittest
from mock import patch
from colab.widgets.templatetags.widgets_tag import import_widgets
from colab.widgets.widget_manager import WidgetManager, Widget
from django.template import Context
class WigetMock(Widget):
def __init__(self, content=""):
self.content = content
class WidgetsTest(unittest.TestCase):
@patch.object(WidgetManager, 'get_widgets')
def test_import_widgets_tag(self, get_widgets):
return_list = [WigetMock(), WigetMock(), WigetMock()]
get_widgets.return_value = return_list
context = Context({'request': ""})
import_widgets(context, 'area')
self.assertIn('widgets_area', context)
self.assertEquals(context['widgets_area'], return_list)
@patch.object(WidgetManager, 'get_widgets')
def test_import_widgets_tag_with_named_var(self, get_widgets):
return_list = [WigetMock(), WigetMock(), WigetMock()]
get_widgets.return_value = return_list
context = Context({'request': ""})
import_widgets(context, 'area', 'var')
self.assertIn('var', context)
self.assertEquals(context['var'], return_list)