I have tried to implement the Passive View MVP in my WinForms application as much as possible. The Presenter is the only one who uses the Model and the Presenter responds to events that are generated in the View. The View in fact is very 'dumb' as it only fires events and deals with the form controls.
Now my question, is it wrong, or very 'anti-pattern' that the View is created with a concrete Model that it then passes to the Presenter?
I need this so that I can test my Presenter properly.
View constructor
public HomeScreenView(IAssessmentModel model)
{
InitializeComponent();
homeScreenPresenter = new HomeScreenPresenter(this, model);
}
Presenter's test initialize
[TestInitialize()]
public void TestInitialize()
{
model = new MockAssessmentsModel();
view = new MockHomeScreenView(model);
presenter = view._presenter;
}