def test_render_with_default_args(self):
        self.serializer.is_valid()
        renderer = HTMLFormRenderer()

        result = renderer.render(self.serializer.data)

        self.assertIsInstance(result, SafeText)
    def test_render_with_provided_args(self):
        self.serializer.is_valid()
        renderer = HTMLFormRenderer()

        result = renderer.render(self.serializer.data, None, {})

        self.assertIsInstance(result, SafeText)
    def setUp(self):
        choices = ((1, 'Option1'), (2, 'Option2'), (12, 'Option12'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.ChoiceField(choices=choices,
                                                 initial=2)

        self.TestSerializer = TestSerializer
        self.renderer = HTMLFormRenderer()
    def test_hidden_field_rendering(self):
        class TestSerializer(serializers.Serializer):
            published = serializers.HiddenField(default=True)

        serializer = TestSerializer(data={})
        serializer.is_valid()
        renderer = HTMLFormRenderer()
        field = serializer['published']
        rendered = renderer.render_field(field, {})
        assert rendered == ''
    def test_hidden_field_rendering(self):
        class TestSerializer(serializers.Serializer):
            published = serializers.HiddenField(default=True)

        serializer = TestSerializer(data={})
        serializer.is_valid()
        renderer = HTMLFormRenderer()
        field = serializer['published']
        rendered = renderer.render_field(field, {})
        assert rendered == ''
    def template_view_inbox(self, request, *args, **kwargs):
        gt_datas_title = [
            'name',
            'bpmnName',
        ]

        gt_datas_dbtitle = [
            'name',
            'bpmnName',
        ]

        gt_buttons = [
            {'type': 'primary fa fa-gear', 'func': 'doJob(obj.id)', 'is_toggle_func': 's', 'is_toggle': 0},

        ]
        serializer = self.get_serializer()
        renderer = HTMLFormRenderer()
        gm_task_create_form = renderer.render(serializer.data, renderer_context={
            'template': 'forms/LunchedProcess/CreateLunchedProcess.html',
            'request': self.request
        })
        # ali = render(request, 'forms/task/CreateTask.html',{})
        gm_task_create_buttons = [
            {'type': 'primary fa fa-save', 'func': 'saveLunchedProcess()', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'cancel()', 'title': ''},
        ]
        # gt_ means GenericTable
        # gm_ means GenericModal

        data = {'gm_items': [{
                                 'gm_modal_title': 'createLunchedProcess',
                                 'gm_modal_id': 'GenericModalTaskCreate.html',
                                 'gm_form': gm_task_create_form,
                                 'gm_buttons': gm_task_create_buttons}],
                'gt_table_title': 'LunchedProcessInbox',
                'gt_object_name': 'LunchedProcess',
                'gt_func_col': 'col-md-1',
                'gt_search_func': 'searchLunchedProcess()',
                'gt_create_func': 'createLunchedProcess()',
                'gt_datas_title': gt_datas_title,
                'gt_datas_dbtitle': gt_datas_dbtitle,
                'gt_buttons': gt_buttons,
                'LunchedProcess_table_template': 'generic-templates/Table.html',
                'LunchedProcess_edit_modal': 'generic-templates/Modal.html',
        }

        return render_to_response('others/LunchedProcessInbox.html', data,
                                  context_instance=RequestContext(self.request))
class TestMultipleChoiceFieldHTMLFormRenderer(TestCase):
    """
    Test rendering MultipleChoiceField with HTMLFormRenderer.
    """

    def setUp(self):
        self.renderer = HTMLFormRenderer()

    def test_render_selected_option_with_string_option_ids(self):
        choices = (('1', 'Option1'), ('2', 'Option2'), ('12', 'Option12'),
                   ('}', 'OptionBrace'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.MultipleChoiceField(choices=choices)

        serializer = TestSerializer(data={'test_field': ['12']})
        serializer.is_valid()

        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="12" selected>Option12</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="2">Option2</option>', result)
        self.assertInHTML('<option value="}">OptionBrace</option>', result)

    def test_render_selected_option_with_integer_option_ids(self):
        choices = ((1, 'Option1'), (2, 'Option2'), (12, 'Option12'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.MultipleChoiceField(choices=choices)

        serializer = TestSerializer(data={'test_field': ['12']})
        serializer.is_valid()

        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="12" selected>Option12</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="2">Option2</option>', result)
Example #8
0
class TestMultipleChoiceFieldHTMLFormRenderer(TestCase):
    """
    Test rendering MultipleChoiceField with HTMLFormRenderer.
    """

    def setUp(self):
        self.renderer = HTMLFormRenderer()

    def test_render_selected_option_with_string_option_ids(self):
        choices = (('1', 'Option1'), ('2', 'Option2'), ('12', 'Option12'),
                   ('}', 'OptionBrace'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.MultipleChoiceField(choices=choices)

        serializer = TestSerializer(data={'test_field': ['12']})
        serializer.is_valid()

        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="12" selected>Option12</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="2">Option2</option>', result)
        self.assertInHTML('<option value="}">OptionBrace</option>', result)

    def test_render_selected_option_with_integer_option_ids(self):
        choices = ((1, 'Option1'), (2, 'Option2'), (12, 'Option12'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.MultipleChoiceField(choices=choices)

        serializer = TestSerializer(data={'test_field': ['12']})
        serializer.is_valid()

        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="12" selected>Option12</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="2">Option2</option>', result)
    def setUp(self):
        choices = ((1, 'Option1'), (2, 'Option2'), (12, 'Option12'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.ChoiceField(choices=choices,
                                                 initial=2)

        self.TestSerializer = TestSerializer
        self.renderer = HTMLFormRenderer()
class TestHTMLFormRenderer(TestCase):
    def setUp(self):
        class TestSerializer(serializers.Serializer):
            test_field = serializers.CharField()

        self.renderer = HTMLFormRenderer()
        self.serializer = TestSerializer(data={})

    def test_render_with_default_args(self):
        self.serializer.is_valid()

        result = self.renderer.render(self.serializer.data, renderer_context={'serializer': self.serializer})

        self.assertIsInstance(result, SafeText)

    def test_render_with_provided_args(self):
        self.serializer.is_valid()

        result = self.renderer.render(self.serializer.data, None, {'serializer': self.serializer})

        self.assertIsInstance(result, SafeText)
    def test_rendering_nested_fields_with_none_value(self):
        from rest_framework.renderers import HTMLFormRenderer

        class Nested1(serializers.Serializer):
            text_field = serializers.CharField()

        class Nested2(serializers.Serializer):
            nested1 = Nested1(allow_null=True)
            text_field = serializers.CharField()

        class ExampleSerializer(serializers.Serializer):
            nested2 = Nested2()

        serializer = ExampleSerializer(
            data={'nested2': {
                'nested1': None,
                'text_field': 'test'
            }})
        assert serializer.is_valid()
        renderer = HTMLFormRenderer()
        for field in serializer:
            rendered = renderer.render_field(field, {})
            expected_packed = (
                '<fieldset>'
                '<legend>Nested2</legend>'
                '<fieldset>'
                '<legend>Nested1</legend>'
                '<divclass="form-group">'
                '<label>Textfield</label>'
                '<inputname="nested2.nested1.text_field"class="form-control"type="text">'
                '</div>'
                '</fieldset>'
                '<divclass="form-group">'
                '<label>Textfield</label>'
                '<inputname="nested2.text_field"class="form-control"type="text"value="test">'
                '</div>'
                '</fieldset>')
            rendered_packed = ''.join(rendered.split())
            assert rendered_packed == expected_packed
Example #12
0
class TestChoiceFieldHTMLFormRenderer(TestCase):
    """
    Test rendering ChoiceField with HTMLFormRenderer.
    """

    def setUp(self):
        choices = ((1, 'Option1'), (2, 'Option2'), (12, 'Option12'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.ChoiceField(choices=choices,
                                                 initial=2)

        self.TestSerializer = TestSerializer
        self.renderer = HTMLFormRenderer()

    def test_render_initial_option(self):
        serializer = self.TestSerializer()
        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="2" selected>Option2</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="12">Option12</option>', result)

    def test_render_selected_option(self):
        serializer = self.TestSerializer(data={'test_field': '12'})

        serializer.is_valid()
        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="12" selected>Option12</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="2">Option2</option>', result)
class TestChoiceFieldHTMLFormRenderer(TestCase):
    """
    Test rendering ChoiceField with HTMLFormRenderer.
    """

    def setUp(self):
        choices = ((1, 'Option1'), (2, 'Option2'), (12, 'Option12'))

        class TestSerializer(serializers.Serializer):
            test_field = serializers.ChoiceField(choices=choices,
                                                 initial=2)

        self.TestSerializer = TestSerializer
        self.renderer = HTMLFormRenderer()

    def test_render_initial_option(self):
        serializer = self.TestSerializer()
        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="2" selected>Option2</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="12">Option12</option>', result)

    def test_render_selected_option(self):
        serializer = self.TestSerializer(data={'test_field': '12'})

        serializer.is_valid()
        result = self.renderer.render(serializer.data)

        self.assertIsInstance(result, SafeText)

        self.assertInHTML('<option value="12" selected>Option12</option>',
                          result)
        self.assertInHTML('<option value="1">Option1</option>', result)
        self.assertInHTML('<option value="2">Option2</option>', result)
    def test_rendering_boolean_field(self):
        from rest_framework.renderers import HTMLFormRenderer

        class ExampleSerializer(serializers.Serializer):
            bool_field = serializers.BooleanField(
                style={'base_template': 'checkbox.html', 'template_pack': 'rest_framework/vertical'})

        serializer = ExampleSerializer(data={'bool_field': True})
        assert serializer.is_valid()
        renderer = HTMLFormRenderer()
        rendered = renderer.render_field(serializer['bool_field'], {})
        expected_packed = (
            '<divclass="form-group">'
            '<divclass="checkbox">'
            '<label>'
            '<inputtype="checkbox"name="bool_field"value="true"checked>'
            'Boolfield'
            '</label>'
            '</div>'
            '</div>'
        )
        rendered_packed = ''.join(rendered.split())
        assert rendered_packed == expected_packed
    def test_rendering_nested_fields_with_none_value(self):
        from rest_framework.renderers import HTMLFormRenderer

        class Nested1(serializers.Serializer):
            text_field = serializers.CharField()

        class Nested2(serializers.Serializer):
            nested1 = Nested1(allow_null=True)
            text_field = serializers.CharField()

        class ExampleSerializer(serializers.Serializer):
            nested2 = Nested2()

        serializer = ExampleSerializer(data={'nested2': {'nested1': None, 'text_field': 'test'}})
        assert serializer.is_valid()
        renderer = HTMLFormRenderer()
        for field in serializer:
            rendered = renderer.render_field(field, {})
            expected_packed = (
                '<fieldset>'
                '<legend>Nested2</legend>'
                '<fieldset>'
                '<legend>Nested1</legend>'
                '<divclass="form-group">'
                '<label>Textfield</label>'
                '<inputname="nested2.nested1.text_field"class="form-control"type="text">'
                '</div>'
                '</fieldset>'
                '<divclass="form-group">'
                '<label>Textfield</label>'
                '<inputname="nested2.text_field"class="form-control"type="text"value="test">'
                '</div>'
                '</fieldset>'
            )
            rendered_packed = ''.join(rendered.split())
            assert rendered_packed == expected_packed
    def setUp(self):
        class TestSerializer(serializers.Serializer):
            test_field = serializers.CharField()

        self.renderer = HTMLFormRenderer()
        self.serializer = TestSerializer(data={})
def render_form(serializer, template_pack=None):
    style = {'template_pack': template_pack} if template_pack else {}
    renderer = HTMLFormRenderer()
    return renderer.render(serializer.data, None, {'style': style})
    def template_view(self, request, *args, **kwargs):
        gt_datas_title = [
            'id',
            'username'
            'email',
            'active',
            'staff',
            'superuser',
            'lastlogin ',
        ]

        gt_datas_dbtitle = [
            'id',
            'username',
            'email',
            'is_active',
            'is_staff',
            'is_superuser',
            "last_login | jalaliDateFromNow:'jYYYY-jMM-jDD hh:mm:ss' ",
        ]

        gt_buttons = [
            {'type': 'primary fa fa-edit', 'func': 'userEdit(obj.username)', 'is_toggle_func': 's', 'is_toggle': 0},
            {'type': 'info fa fa-key', 'func': 'passEdit(obj.username)', 'is_toggle_func': 's', 'is_toggle': 0},
            {'type': 'warning fa fa-lock', 'type2': 'success fa fa-unlock', 'is_toggle_func': 'is_active',
             'func': 'userPassive(obj.username)', 'title': 'passive',
             'is_toggle': 1},
            {'type': 'danger fa fa-trash', 'func': 'userDelete(obj.username)', 'is_toggle_func': 's', 'is_toggle': 0}

        ]

        gm_user_buttons = [
            {'type': 'success fa fa-save', 'func': 'saveUserEdit()', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'cancel()', 'title': ''},
        ]

        gm_pass_buttons = [
            {'type': 'success fa fa-save', 'func': 'savePassEdit()', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'cancel()', 'title': ''},
        ]

        gm_aresure_buttons = [
            {'type': 'success fa fa-check', 'func': 'yes()', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'no()', 'title': ''},
        ]

        serializer = self.get_serializer()
        renderer = HTMLFormRenderer()
        gm_user_form = renderer.render(serializer.data, renderer_context={
            'template': 'forms/amsp-user/EditUsernameEmail.html',
            'request': self.request
        })

        gm_pass_form = renderer.render(serializer.data, renderer_context={
            'template': 'forms/amsp-user/EditPass.html',
            'request': self.request
        })

        # gt_ means GenericTable
        # gm_ means GenericModal

        data = {'gm_items': [{
                                 'gm_modal_title': 'edituser',
                                 'gm_modal_id': 'GenericModalUserEdit.html',
                                 'gm_form': gm_user_form,
                                 'gm_buttons': gm_user_buttons},
                             {
                                 'gm_modal_title': 'editpass',
                                 'gm_modal_id': 'GenericModalPassEdit.html',
                                 'gm_form': gm_pass_form,
                                 'gm_buttons': gm_pass_buttons},
                             {
                                 'gm_modal_title': 'areyuosure',
                                 'gm_modal_id': 'GenericModalAreYouSure.html',
                                 'gm_form': 'areusure',
                                 'gm_buttons': gm_aresure_buttons},
                             {
                                 'gm_modal_title': 'forbiden',
                                 'gm_modal_id': 'GenericModalPermissionDenied.html',
                                 'gm_form': 'permissiondenied',
                                 'gm_buttons': [{'type': 'success fa fa-check', 'func': 'ok()', 'title': ''}]}],
                'gt_table_title': 'userlist',
                'gt_object_name': 'user',
                'gt_func_col': 'col-md-2',
                'gt_search_func': 'searchUsers()',
                'gt_datas_title': gt_datas_title,
                'gt_datas_dbtitle': gt_datas_dbtitle,
                'gt_buttons': gt_buttons,
                'user_table_template': 'ani-theme/generic-templates/Table.html',
                'user_edit_modal': 'ani-theme/generic-templates/Modal.html',
        }

        return render_to_response('ani-theme/views/pages/dashboard/../../../templates/amsp-user/UsersTable.html', data,
                                  context_instance=RequestContext(self.request))
Example #19
0
def render_field(field, style):
    renderer = style.get('renderer', HTMLFormRenderer())
    return renderer.render_field(field, style)
Example #20
0
def render_form(serializer, template_pack=None):
    style = {'template_pack': template_pack} if template_pack else {}
    renderer = HTMLFormRenderer()
    return renderer.render(serializer.data, None, {'style': style})
 def setUp(self):
     self.renderer = HTMLFormRenderer()
    def template_view(self, request, *args, **kwargs):
        gt_datas_title = [
            'id',
            'name',
        ]
        gt_datas_dbtitle = [
            'id',
            'name',
        ]
        gt_buttons = [
            {'type': 'primary fa fa-edit', 'func': 'groupEdit(obj.name)', 'title': '', 'is_toggle': 0},
            {'type': 'danger fa fa-trash', 'func': 'groupDelete(obj.name)', 'title': '', 'is_toggle': 0},
        ]

        gm_group_buttons = [
            {'type': 'success fa fa-save', 'func': 'saveGroupEdit(obj.name)', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'cancel()', 'title': ''},
        ]
        gm_group_create_buttons = [
            {'type': 'primary fa fa-save', 'func': 'saveGroup()', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'cancel()', 'title': ''},
        ]
        serializer = self.get_serializer()
        renderer = HTMLFormRenderer()
        gm_group_form = renderer.render(serializer.data, renderer_context={
            'template': 'forms/amsp-user/EditGroup.html',
            'request': self.request
        })
        gm_group_create_form = renderer.render(serializer.data, renderer_context={
            'template': 'forms/amsp-user/CreateGroup.html',
            'request': self.request
        })
        gm_aresure_buttons = [
            {'type': 'success fa fa-check', 'func': 'yes()', 'title': ''},
            {'type': 'danger fa fa-times', 'func': 'no()', 'title': ''},
        ]

        # gt_ means GenericTable
        # gm_ means GenericModal

        data = {'gm_items': [{
                                 'gm_modal_title': 'editgroup',
                                 'gm_modal_id': 'GenericModalGroupEdit.html',
                                 'gm_form': gm_group_form,
                                 'gm_buttons': gm_group_buttons},
                             {
                                 'gm_modal_title': 'creategroup',
                                 'gm_modal_id': 'GenericModalGroupCreate.html',
                                 'gm_form': gm_group_create_form,
                                 'gm_buttons': gm_group_create_buttons}, {
                                 'gm_modal_title': 'areyuosure',
                                 'gm_modal_id': 'GenericModalAreYouSure.html',
                                 'gm_form': 'areusure',
                                 'gm_buttons': gm_aresure_buttons},{
                                 'gm_modal_title': 'forbiden',
                                 'gm_modal_id': 'GenericModalPermissionDenied.html',
                                 'gm_form': 'permissiondenied',
                                 'gm_buttons': [{'type': 'success fa fa-check', 'func': 'ok()', 'title': ''}]} ],
                'gt_table_title': 'grouplist',
                'gt_object_name': 'group',
                'gt_func_col': 'col-md-1',
                'gt_search_func': 'searchGroup()',
                'gt_create_func': 'createGroup()',
                'gt_datas_title': gt_datas_title,
                'gt_datas_dbtitle': gt_datas_dbtitle,
                'gt_buttons': gt_buttons,
                'group_table_template': 'ani-theme/generic-templates/Table.html',
                'group_edit_modal': 'ani-theme/generic-templates/Modal.html',
        }
        return render_to_response('amsp-user/GroupsTable.html', data,
                                  context_instance=RequestContext(self.request))
Example #23
0
def render_vue_field(field, style=None, template_pack="vue/default/"):
    style = {} if style is None else style
    if template_pack:
        style["template_pack"] = template_pack
    renderer = style.get("renderer", HTMLFormRenderer())
    return renderer.render_field(field, style)
 def setUp(self):
     self.renderer = HTMLFormRenderer()
Example #25
0
def render_vue_form(serializer, template_pack=None):
    style = {"template_pack": template_pack or "vue/default"}
    renderer = HTMLFormRenderer()
    return renderer.render(serializer.data, None, {"style": style})
Example #26
0
def render_field(field, style=None):
    style = style or {}
    renderer = style.get('renderer', HTMLFormRenderer())
    return renderer.render_field(field, style)