У меня есть класс, который на данный момент должен всегда заполнять определенный член, прежде чем он будет действительным.Для обеспечения этого у класса нет конструктора по умолчанию, а вместо этого есть конструктор, который принимает значение для этого обязательного члена.Настройка похожа на приведенную ниже:
public class MyClass
{
public string Owner { get; protected set; }
public MyClass(string owner)
{
this.Owner = owner;
}
}
Теперь я хотел бы написать тест, чтобы убедиться, что на самом деле нет конструктора по умолчанию, поэтому, если его добавят в будущем, нам напомнятиз-за причин, не имеющих, и вынуждены учитывать последствия этого.Хотя очевидно, что попытка вызвать конструктор по умолчанию в тесте не будет просто неудачной, она не скомпилируется.
Есть ли хороший способ выполнить такой тест без изменения моего исходного класса?Если нет, я полагаю, я мог бы реализовать конструктор по умолчанию, который генерирует исключение.Мое единственное сомнение в том, что вызов конструктора по умолчанию теперь становится компилируемым кодом, и тогда мы должны полагаться на другие тесты, чтобы гарантировать, что такой код не будет написан.
Мысли?