Это мой первый вопрос, поэтому будьте добры! :)
То, что я пытаюсь сделать, - это написать несколько тестов для класса менеджера, который во время построения добавляет много новых экземпляров одного класса элементов в список. Когда UpdateAllItems вызывается в этом классе диспетчера, предполагается выполнить итерацию списка и вызвать Increment для каждого отдельного элемента.
Класс менеджера - это мой код, но класс отдельного элемента - нет, поэтому я не могу его изменить.
Я использую NUnit для среды тестирования и начинаю работать с Moq. Поскольку класс менеджера использует класс одного элемента, я думаю, что мне нужно использовать Moq, поэтому я тестирую только менеджера, а не один элемент.
Как мне написать тесты для моего метода UpdateAllItems? (Технически я должен сначала написать тесты, которые я знаю).
Вот пример кода, который дает общее представление о том, с чем я работаю ...
public class SingleItem_CodeCantBeModified
{
public int CurrentValue { get; private set; }
public SingleItem_CodeCantBeModified(int startValue)
{
CurrentValue = startValue;
}
public void Increment()
{
CurrentValue++;
}
}
public class SingleItemManager
{
List<SingleItem_CodeCantBeModified> items = new List<SingleItem_CodeCantBeModified>();
public SingleItemManager()
{
items.Add(new SingleItem_CodeCantBeModified(100));
items.Add(new SingleItem_CodeCantBeModified(200));
}
public void UpdateAllItems()
{
items.ForEach(item => item.Increment());
}
}
Заранее спасибо за помощь!