def test_from_imagedata(self): """sets the size and image data member of the surface""" imagedata = MagicMock() imagedata.width = 10 imagedata.height = 15 s = self.s.from_imagedata(imagedata) self.assertEqual(s.get_rect().size, (10, 15)) self.assertIs(imagedata, s.get_imagedata())
def _prepare_terminal_mock(self, mock_terminal): mock_terminal_instance = MagicMock() mock_terminal.return_value = mock_terminal_instance mock_terminal_instance.clear = "[CLEAR]" mock_terminal_instance.height = 3 mock_terminal_instance.width = 5 return mock_terminal_instance
def test_function(self): """ Does it implement the `help` strategy? """ args = MagicMock() quartermaster = MagicMock() HelpStrategy.quartermaster = quartermaster args.modules = 'x y z'.split() args.name = 'bob' args.width = 38 definition_bob = MagicMock() plugin_bob = MagicMock() definition_bob.return_value = plugin_bob plugin_definitions = {'bob': definition_bob} def side_effect(name): return plugin_definitions[name] quartermaster.get_plugin.side_effect = side_effect strategy = HelpStrategy() strategy.function(args) self.assertEqual(quartermaster.external_modules, args.modules) quartermaster.get_plugin.assert_called_with('bob') plugin_bob.help.assert_called_with(args.width) # type-errors are considered a user-mistake quartermaster.get_plugin.side_effect = TypeError("no comprende") strategy.function(args) quartermaster.list_plugins.assert_called_with() #get rid of the TypeError so we can test other errors quartermaster.get_plugin.side_effect = side_effect plugin_bob.help.side_effect = AttributeError("no such attribute") strategy.function(args) plugin_bob.help.side_effect = Exception("aaaaaaaaahhhhhhh") strategy.function(args) plugin_bob.help.assert_called_with(args.width) return