# -*- coding: utf-8; -*- from unittest import TestCase from pyramid import testing from pyramid.httpexceptions import HTTPFound, HTTPForbidden, HTTPNotFound from wuttjamaican.conf import WuttaConfig from wuttaweb.views import base from wuttaweb.forms import Form from wuttaweb.grids import Grid class TestView(TestCase): def setUp(self): self.config = WuttaConfig() self.app = self.config.get_app() self.request = testing.DummyRequest(wutta_config=self.config) self.view = base.View(self.request) def test_basic(self): self.assertIs(self.view.request, self.request) self.assertIs(self.view.config, self.config) self.assertIs(self.view.app, self.app) def test_forbidden(self): error = self.view.forbidden() self.assertIsInstance(error, HTTPForbidden) def test_make_form(self): form = self.view.make_form() self.assertIsInstance(form, Form) def test_make_grid(self): grid = self.view.make_grid() self.assertIsInstance(grid, Grid) def test_notfound(self): error = self.view.notfound() self.assertIsInstance(error, HTTPNotFound) def test_redirect(self): error = self.view.redirect('/') self.assertIsInstance(error, HTTPFound) self.assertEqual(error.location, '/')