public void The_Presenter_Hooks_Up_To_The_Right_Events()
        {
            IMainPanel        mainPanel = MockRepository.GenerateStub <IMainPanel>();
            IRelationshipForm form      = MockRepository.GenerateMock <IRelationshipForm>();

            //new RelationshipPresenter(mainPanel, form);

            form.AssertWasCalled(f => f.RelationshipNameChanged += null, c => c.IgnoreArguments());
            form.AssertWasCalled(f => f.PrimaryKeyChanged       += null, c => c.IgnoreArguments());
            form.AssertWasCalled(f => f.ForeignKeyChanged       += null, c => c.IgnoreArguments());
            form.AssertWasCalled(f => f.DeleteRelationship      += null, c => c.IgnoreArguments());
        }
        public void The_Presenter_Fills_In_The_Form()
        {
            IMainPanel        mainPanel = MockRepository.GenerateStub <IMainPanel>();
            IRelationshipForm form      = MockRepository.GenerateMock <IRelationshipForm>();

            Relationship relationship = TestHelper.GetRelationship();

            var presenter = new RelationshipPresenter(mainPanel, form);

            presenter.AttachToModel(relationship);

            form.AssertWasCalled(f => f.Clear());
            form.AssertWasCalled(f => f.RelationshipName = "Name");
            form.AssertWasCalled(f => f.PrimaryKey       = relationship.PrimaryKey);
            form.AssertWasCalled(f => f.ForeignKey       = relationship.ForeignKey);
            form.AssertWasCalled(f => f.SetPossiblePrimaryKeys(null), c => c.IgnoreArguments());
            form.AssertWasCalled(f => f.SetPossibleForeignKeys(null), c => c.IgnoreArguments());
            form.AssertWasCalled(f => f.SetVirtualProperties(relationship.Ex));
        }