Exemplo n.º 1
0
    def test_two_widgets_are_created(self):
        widget1 = HTMLWidget(template=self.template, context={"model": self.model})

        widget2 = HTMLWidget(template=self.template, context={"model": self.model})

        # Check if `jigna` was initialised with the correct python models
        # (check by making sure that primitive variables are the same)
        attr1 = widget1.execute_js("jigna.models.model.attr1")
        attr2 = widget2.execute_js("jigna.models.model.attr2")
        self.assertEqual(attr1, self.model.attr1)
        self.assertEqual(attr2, self.model.attr2)
Exemplo n.º 2
0
    def test_two_widgets_are_created(self):
        widget1 = HTMLWidget(template=self.template,
                             context={'model': self.model})

        widget2 = HTMLWidget(template=self.template,
                             context={'model': self.model})

        # Check if `jigna` was initialised with the correct python models
        # (check by making sure that primitive variables are the same)
        attr1 = widget1.execute_js("jigna.models.model.attr1")
        attr2 = widget2.execute_js("jigna.models.model.attr2")
        self.assertEqual(attr1, self.model.attr1)
        self.assertEqual(attr2, self.model.attr2)
Exemplo n.º 3
0
    def test_jigna_was_initialized(self):
        # Create a widget
        widget = HTMLWidget(template=self.template, context={"model": self.model})

        # Check if `jigna` was initialised on the JS side
        client = widget.execute_js("jigna.client")
        self.assertIsNotNone(client)
Exemplo n.º 4
0
    def test_created_widget_can_access_jigna(self):
        # Create a widget
        widget = HTMLWidget(template=self.template, context={"model": self.model})

        # Check if `jigna` was loaded on the JS side
        jigna = widget.execute_js("jigna")
        self.assertIsNotNone(jigna)
Exemplo n.º 5
0
    def test_jigna_was_initialized(self):
        # Create a widget
        widget = HTMLWidget(template=self.template,
                            context={'model': self.model})

        # Check if `jigna` was initialised on the JS side
        client = widget.execute_js("jigna.client")
        self.assertIsNotNone(client)
Exemplo n.º 6
0
    def test_created_widget_can_access_jigna(self):
        # Create a widget
        widget = HTMLWidget(template=self.template,
                            context={'model': self.model})

        # Check if `jigna` was loaded on the JS side
        jigna = widget.execute_js("jigna")
        self.assertIsNotNone(jigna)
Exemplo n.º 7
0
    def test_jigna_was_initialized_with_python_models(self):
        # Create a widget
        widget = HTMLWidget(template=self.template, context={"model": self.model})

        # Check if `jigna` was initialised with the correct python models
        # (check by making sure that primitive variables are the same)
        attr1 = widget.execute_js("jigna.models.model.attr1")
        attr2 = widget.execute_js("jigna.models.model.attr2")
        self.assertEqual(attr1, self.model.attr1)
        self.assertEqual(attr2, self.model.attr2)
Exemplo n.º 8
0
    def test_jigna_was_initialized_with_python_models(self):
        # Create a widget
        widget = HTMLWidget(template=self.template,
                            context={'model': self.model})

        # Check if `jigna` was initialised with the correct python models
        # (check by making sure that primitive variables are the same)
        attr1 = widget.execute_js("jigna.models.model.attr1")
        attr2 = widget.execute_js("jigna.models.model.attr2")
        self.assertEqual(attr1, self.model.attr1)
        self.assertEqual(attr2, self.model.attr2)
Exemplo n.º 9
0
    def test_events_are_not_sent_after_widget_is_closed(self):
        # Given
        template = Template(body_html="Attr1: {{model.attr1}}")
        widget = HTMLWidget(template=template, context={'model': self.model})

        # When
        self.model.attr1 = "one"
        widget.close()
        self.model.attr1 = "two"

        # Then
        #
        # After the widget is closed, we should not fire any further object
        # changed events.
        self.assertEqual(widget.execute_js("jigna.models.model.attr1"), "one")
Exemplo n.º 10
0
    def test_events_are_not_sent_after_widget_is_closed(self):
        # Given
        template = Template(body_html="Attr1: {{model.attr1}}")
        widget = HTMLWidget(template=template, context={'model': self.model})

        # When
        self.model.attr1 = "one"
        widget.close()
        self.model.attr1 = "two"

        # Then
        #
        # After the widget is closed, we should not fire any further object
        # changed events.
        self.assertEqual(widget.execute_js("jigna.models.model.attr1"), "one")