Mocking с использованием Moq будет только издеваться над интерфейсами и виртуальными методами класса.Свойство Assembler
должно быть определено как virtual
.
В любом случае Насмешка над формой Windows не является хорошей насмешкой - в ней есть большой пакет вещей WIN32, которые делают ваши тесты хрупкими.Если вам нужно выполнить модульное тестирование и смоделировать форму, создайте интерфейс, который необходимо реализовать в вашей форме, и смоделируйте его для объектов, которые должны взаимодействовать с вашей формой.
public interface IHasAssembler
{
Foo Assembler {get; set;}
}
public class MyForm : IHasAssembler
{
//
}
, а затем смоделируйте интерфейс, а не форму:
Mock<IHasAssembler> myMock = new Mock<IHasAssembler>();