class TestPresenterNotRequiringTemporaryFiles(unittest.TestCase): def setUp(self): self.model = Model() self.view = View() self.interactor = Interactor() self.presenter = Presenter(self.model, self.interactor, self.view) self.maxDiff = None def testSettingsChanged(self): self.view.flickr = True self.view.capital = True self.view.delimiter = "-" self.presenter.settingsChanged() self.assertEqual(self.model._flickr, True) self.assertEqual(self.model._capital, True) self.assertEqual(self.model._delimiter, "-") self.view.flickr = False self.view.capital = False self.view.delimiter = " " self.presenter.settingsChanged() self.assertEqual(self.model._flickr, False) self.assertEqual(self.model._capital, False) self.assertEqual(self.model._delimiter, " ") def testInvalidSettings(self): self.view.flickr = True self.view.capital = True self.view.delimiter = ";" self.assertRaises(ValueError, self.presenter.settingsChanged) def testSetOptions(self): self.model._lastPath = "" self.view.capital = True self.view.flickr = True self.view.delimiter = '_' expectSettings = {"capital":True, "flickr":True, "delimiter":"_", "lastPath":""} self.presenter.settingsChanged() self.assertDictEqual(self.model.getSettings(), expectSettings) self.view.capital = False self.view.flickr = False self.view.delimiter = ' ' expectSettings = {"capital":False, "flickr":False, "delimiter":" ", "lastPath":""} self.presenter.settingsChanged() self.assertDictEqual(self.model.getSettings(), expectSettings)