Exemplo n.º 1
0
    def test_decorate_valid_view(self):
        class ArticleForm(forms.ModelForm):
            class Meta:
                model = Article
        class ArticleView(views.CreateView):
            model = Article
            form_class = with_request(ArticleForm)
        view_class = with_request(ArticleView)
        
        self.assertTrue(hasattr(view_class, 'get_form_kwargs'))
        self.assertTrue(getattr(view_class, '_with_request_decorated', False))

        # does the get_form_kwargs return request correctly?
        view = view_class()
        # ``request`` and ``object`` are stored on the instance in ``dispatch`` 
        # method in real usage but simply store fake request now for simulating
        mock_request = Mock()
        mock_request.method = 'GET'
        view.request = mock_request
        view.object = Article()
        kwargs = view.get_form_kwargs()
        self.assertTrue('request' in kwargs)
        self.assertEqual(kwargs['request'], mock_request)
        
        # does the form created by the view correctly handle request?
        form_class = view.get_form_class()
        form = view.get_form(form_class)

        self.assertTrue(hasattr(form_class, '__init__'))
        self.assertTrue(hasattr(form_class, 'save'))
        self.assertTrue(getattr(form_class, '_with_request_decorated', False))
        
        # does the request correctly stored?
        self.assertEqual(form.request, mock_request)
Exemplo n.º 2
0
    def test_decorate_valid_form(self):
        class ArticleForm(forms.ModelForm):
            class Meta:
                model = Article

        form_class = with_request(ArticleForm)

        self.assertTrue(hasattr(form_class, "__init__"))
        self.assertTrue(hasattr(form_class, "save"))
        self.assertTrue(getattr(form_class, "_with_request_decorated", False))

        # does the request correctly stored?
        mock_request = Mock()
        kwargs = {"initial": {}, "request": mock_request}
        form = form_class(**kwargs)
        self.assertEqual(form.request, mock_request)
Exemplo n.º 3
0
    def test_decorate_valid_form(self):
        class ArticleForm(forms.ModelForm):
            class Meta:
                model = Article
        form_class = with_request(ArticleForm)

        self.assertTrue(hasattr(form_class, '__init__'))
        self.assertTrue(hasattr(form_class, 'save'))
        self.assertTrue(getattr(form_class, '_with_request_decorated', False))
        
        # does the request correctly stored?
        mock_request = Mock()
        kwargs = {
                'initial': {},
                'request': mock_request,
            }
        form = form_class(**kwargs)
        self.assertEqual(form.request, mock_request)
Exemplo n.º 4
0
    def test_decorate_valid_view(self):
        class ArticleForm(forms.ModelForm):
            class Meta:
                model = Article

        class ArticleView(views.CreateView):
            model = Article
            form_class = with_request(ArticleForm)

        view_class = with_request(ArticleView)

        self.assertTrue(hasattr(view_class, "get_form_kwargs"))
        self.assertTrue(getattr(view_class, "_with_request_decorated", False))

        # does the get_form_kwargs return request correctly?
        view = view_class()
        # ``request`` and ``object`` are stored on the instance in ``dispatch``
        # method in real usage but simply store fake request now for simulating
        mock_request = Mock()
        mock_request.method = "GET"
        view.request = mock_request
        view.object = Article()
        kwargs = view.get_form_kwargs()
        self.assertTrue("request" in kwargs)
        self.assertEqual(kwargs["request"], mock_request)

        # does the form created by the view correctly handle request?
        form_class = view.get_form_class()
        form = view.get_form(form_class)

        self.assertTrue(hasattr(form_class, "__init__"))
        self.assertTrue(hasattr(form_class, "save"))
        self.assertTrue(getattr(form_class, "_with_request_decorated", False))

        # does the request correctly stored?
        self.assertEqual(form.request, mock_request)
Exemplo n.º 5
0
 class ArticleView(views.CreateView):
     model = Article
     form_class = with_request(ArticleForm)