def test_when_user_edits_name_name_is_memorized(self): model = Tag() view = MockTagView() presenter = TagEditorPresenter(model, view) view.widget_set_value('tag_name_entry', u'1234') presenter.on_text_entry_changed('tag_name_entry') self.assertEquals(model.tag, u'1234')
def test_when_user_edits_fields_ok_active(self): model = Tag() view = MockTagView() presenter = TagEditorPresenter(model, view) self.assertTrue(not view.sensitive) # not changed presenter.on_text_entry_changed('tag_name_entry', u'1234') self.assertEquals(model.tag, u'1234') self.assertTrue(view.sensitive) # changed
def test_presenter_does_not_initialize_view(self): session = db.Session() # prepare data in database obj = Tag(tag=u'1234') session.add(obj) view = MockTagView() presenter = TagEditorPresenter(obj, view) self.assertFalse(view.get_widget_value("tag_name_entry")) presenter.refresh_view() self.assertEquals(view.get_widget_value("tag_name_entry"), u'1234')
def test_presenter_does_not_initialize_view(self): session = db.Session() # prepare data in database obj = Tag(tag=u'1234') session.add(obj) view = MockTagView() presenter = TagEditorPresenter(obj, view) self.assertFalse(view.widget_get_value("tag_name_entry")) presenter.refresh_view() self.assertEquals(view.widget_get_value("tag_name_entry"), u'1234')
def test_widget_names_and_field_names(self): model = Tag() view = MockTagView() presenter = TagEditorPresenter(model, view) for widget, field in presenter.widget_to_field_map.items(): self.assertTrue(hasattr(model, field), field) presenter.view.widget_get_value(widget)
def test_if_asked_presenter_initializes_view(self): session = db.Session() # prepare data in database obj = Tag(tag=u'1234') session.add(obj) view = MockTagView() TagEditorPresenter(obj, view, refresh_view=True) self.assertEquals(view.widget_get_value("tag_name_entry"), u'1234')
def test_when_user_inserts_existing_name_warning_ok_deactivated(self): session = db.Session() # prepare data in database obj = Tag(tag=u'1234') session.add(obj) session.commit() session.close() ## ok. thing is already there now. session = db.Session() view = MockTagView() obj = Tag() # new scratch object session.add(obj) # is in session presenter = TagEditorPresenter(obj, view) self.assertTrue(not view.sensitive) # not changed presenter.on_unique_text_entry_changed('tag_name_entry', u'1234') self.assertEquals(obj.tag, u'1234') self.assertTrue(view.is_dirty()) self.assertTrue(not view.sensitive) # unacceptable change self.assertTrue(presenter.has_problems())