예제 #1
0
    def test_build_form_one_child(self):
        json = {
            "attrs": {
                "id": "some_id",
                "class": [
                    "class1",
                    "class2"
                ]
            },
            "children": [
                {
                    "tag": "input",
                    "element": {
                        "attrs": {
                            "id": "my_text_field",
                            "type": "text"
                        },
                        "parent": "some_id"
                    }
                }
            ]
        }

        form = FormBuilder(json)
        html = form.build()
        self.assertTrue('id="my_text_field"' in html)
        self.assertTrue('id="some_id"' in html)
        self.assertTrue('class="class1 class2"' in html)
예제 #2
0
    def test_build_form(self):
        json = {
            "attrs": {
                "id": "some_id",
                "class": [
                    "class1",
                    "class2"
                ]
            },
            "children": []
        }

        form = FormBuilder(json)
        html = form._build_form()
        self.assertTrue('id="{}"'.format(json['attrs']['id']) in html)
        self.assertTrue('class="{}"'.format(" ".join(json['attrs']['class'])) in html)
예제 #3
0
    def test_simple_form(self):
        path = os.path.dirname(os.path.abspath(__file__))
        with open(os.path.join(path, "simple_form.json")) as f:
            json_obj = json.load(f)
        form = FormBuilder(json_obj)

        self.assertEqual(form.attrs['id'], json_obj['attrs']['id'])
        self.assertEqual(form.attrs['class'], json_obj['attrs']['class'])
        self.assertEqual(form.attrs['style'], json_obj['attrs']['style'])
        self.assertEqual(form.children, json_obj['children'])

        html = form.build()

        self.assertTrue('id="my_text_field"' in html)
        self.assertTrue('type="text"' in html)
        self.assertTrue('id="my_select_field"' in html)
        self.assertTrue('id="form_test"' in html)
        self.assertTrue('style="display: block; background-color: #333333;"' in html)
        self.assertTrue('class="class1 class2"' in html)