Я использую db4oTool для инструментальных классов для прозрачной активации/настойчивости. Я использую переключатели -ta и -collections.Единичное тестирование Db4oTool Instrumentation (Коллекции)
Я знаю, как проверить, что сами классы надлежащим образом приспособлены к следующему тесту.
Assert.IsTrue(typeof(IActivatable).IsAssignableFrom(typeof(Machine)), "Machine class not instrumented");
Однако я не знаю, как проверить, что мои коллекции быть инструментальными правильно.
Учитывая следующий класс машины:
public class Machine : DomainBase
{
private string _machineId;
public string MachineId
{
get { return _machineId; }
set { _machineId = value; }
}
public IList<EnergyTag> EnergyTags { get; set; }
public void AddEnergyTag(EnergyTag energyTag)
{
if (energyTag.Machine == null)
energyTag.Machine = this;
if (EnergyTags == null)
EnergyTags = new List<EnergyTag>();
EnergyTags.Add(energyTag);
}
}
Как я могу проверить, что коллекция EnergyTags была правильно инструментальными?
Edit:
Решение:
var machine = new Machine();
Assert.IsTrue(machine.EnergyTags.GetType().Equals(typeof(ActivatableList<EnergyTag>)));
Спасибо Vagaus, что достало меня туда, где мне нужно было быть. Окончательное решение добавляется к моему первоначальному вопросу. – Travis