Exemplo n.º 1
0
    def test_widget_field_prepare_data(self):
        """Prepare_data should return widget"""

        register.widget(TestWidget)

        # Create article and image for testing
        article = DispatchTestHelpers.create_article(self.client)
        image = DispatchTestHelpers.create_image(self.client)
        widget = TestWidget()

        testfield = WidgetField('Title', [TestWidgetSub])

        field_data = {
            'id': 'test-widget',
            'data': {
                'title': 'test title',
                'description': 'test description',
                'article': article.data['id'],
                'image': image.data['id']
            }
        }

        prepared_data = testfield.prepare_data(field_data)

        self.assertEqual(type(prepared_data), type(widget))
Exemplo n.º 2
0
    def test_widget_field_prepare_data_no_data(self):
        """Test the case where None data is passed to 'prepare_data' """

        widget = WidgetField('Title', [TestWidgetSub])

        data = None

        self.assertEqual(widget.prepare_data(data), None)
Exemplo n.º 3
0
    def test_get_all_widgets(self):
        """Get all the widgets associated with a field"""

        register.widget(TestWidget)
        register.widget(TestWidget2)
        register.widget(TestWidget3)

        # Create article and image for testing
        article = DispatchTestHelpers.create_article(self.client)
        image = DispatchTestHelpers.create_image(self.client)
        widget1 = TestWidget()
        widget2 = TestWidget2()
        widget3 = TestWidget3()

        testfield = WidgetField('Title', [TestWidgetSub])

        field_data = {
            'id': 'test-widget',
            'data': {
                'title': 'test title',
                'description': 'test description',
                'article': article.data['id'],
                'image': image.data['id'],
                'widget': {
                    'id': 'test-widget-2',
                    'data': {
                        'title': 'test title',
                        'description': 'test description',
                        'article': article.data['id'],
                        'image': image.data['id'],
                        'widget': {
                            'id': 'test-widget-3',
                            'data': {
                                'title': 'Test widget 3'
                            }
                        }
                    }
                }
            }
        }

        json = testfield.to_json(field_data)
        prepared_data = testfield.prepare_data(field_data).data

        self.assertEqual(json['id'], 'test-widget')
        self.assertEqual(json['data']['widget']['id'], 'test-widget-2')
        self.assertEqual(json['data']['widget']['data']['widget']['id'],
                         'test-widget-3')

        self.assertEqual(prepared_data['widget']['id'], 'test-widget-2')
        self.assertEqual(prepared_data['widget']['data']['widget']['id'],
                         'test-widget-3')