Example #1
0
    def test_get_prep_value(self):
        block = blocks.ModelChooserBlock('core_page')
        test_page = self.child_page

        self.assertEqual(block.get_prep_value(test_page.pk), test_page.pk)
        self.assertEqual(block.get_prep_value(test_page), test_page.pk)
        self.assertEqual(block.get_prep_value(None), None)
Example #2
0
    def test_to_python(self):
        block = blocks.ModelChooserBlock('core_page')
        test_page = self.child_page

        value = block.to_python(test_page.pk)
        self.assertEqual(isinstance(value, Page), isinstance(test_page, Page))
        self.assertEqual(block.to_python(None), None)
Example #3
0
    def test_deserialize(self):
        """The serialized value of a ModelChooserBlock (an ID) should deserialize to a Page object"""
        block = blocks.ModelChooserBlock('core_page')
        self.assertEqual(isinstance(block.to_python(self.child_page.id), Page),
                         isinstance(self.child_page, Page))

        # None should deserialize to None
        self.assertEqual(block.to_python(None), None)
Example #4
0
    def test_serialize(self):
        """The value of a ModelChooserBlock (a Page object) should serialize to an ID"""
        block = blocks.ModelChooserBlock('core_page')
        self.assertEqual(block.get_prep_value(self.child_page),
                         self.child_page.id)

        # None should serialize to None
        self.assertEqual(block.get_prep_value(None), None)
Example #5
0
    def test_form_render(self):
        block = blocks.ModelChooserBlock('core_page',
                                         help_text="pick a page, any page")

        empty_form_html = block.render_form(None, 'page')
        self.assertIn('<input type="hidden" value="" name="page"',
                      empty_form_html)
        self.assertIn('initModelChooser(', empty_form_html)

        test_page = self.child_page
        test_form_html = block.render_form(test_page, 'page')
        expected_html = '<input type="hidden" value="%d" name="page" ' % test_page.id
        self.assertIn(expected_html, test_form_html)
        self.assertIn("pick a page, any page", test_form_html)
Example #6
0
 def test_widget(self):
     block = blocks.ModelChooserBlock('core_page')
     self.assertTrue(isinstance(block.widget, widgets.ModelChooserWidget))
Example #7
0
 def test_target_model(self):
     block = blocks.ModelChooserBlock('core_page')
     self.assertEqual(block.target_model, Page)