class ExceptionFormattersFactoryTests(FantasticoUnitTestsCase): '''This class provides the tests suite for exception formatters factory.''' _factory = None def init(self): '''This method is invoked automatically to setup common dependencies for all test cases.''' self._factory = ExceptionFormattersFactory() def test_get_formatter_json(self): '''This test case ensures a json exception formatter can be built using the factory of formatters.''' result = self._factory.get_formatter(ExceptionFormattersFactory.JSON) self.assertIsInstance(result, JsonExceptionFormatter) def test_get_formatter_urlencoded(self): '''This test case ensures an url encoded exception formatter can be built using the factory of formatters.''' result = self._factory.get_formatter(ExceptionFormattersFactory.FORM) self.assertIsInstance(result, FormUrlEncodedExceptionFormatter) def test_get_formatter_hashencoded(self): '''This test case ensures an hash encoded exception formatter can be built using the factory of formatters.''' result = self._factory.get_formatter(ExceptionFormattersFactory.HASH) self.assertIsInstance(result, HashUrlEncodedExceptionFormatter) def test_get_formatter_unknown(self): '''This test case ensures a dummy formatter is returned when a formatter type is not supported by exception formatters factory.''' result = self._factory.get_formatter("unknown formatter for good") self.assertIsInstance(result, DummyExceptionFormatter)
def init(self): '''This method is invoked automatically to setup common dependencies for all test cases.''' self._factory = ExceptionFormattersFactory()