У меня проблемы с установкой значения свойства в Rhinomocks. Мне нужно установить начальное значение свойства вне тестируемого метода, а затем установить его значение внутри тестируемого метода условно. Какой-то код:
public interface IResponse
{
string ResponseText { get; set; }
}
public void ProcessResponse(IResponse response)
{
if(response.ResponseText == "Unset")
{
response.ResponseText = someService.GetResponse();//someService here is irrelvant to the question
}
}
[TestMethod]
public void ResponseValueIsSetWhenConditionIsTrueTest()
{
var mock = Mock<IResponse>.GenerateMock();
mock.Stub(x => x.ResponseText).Returns("Unset");
Processor.ProcessResponse(mock);
Assert.AreEqual("Responseval", mock.ResponseText); //Fails because the method doesn't set the value of the property.
}
Мне нужно, чтобы свойство макета имело начальное значение, входящее в часть теста Act, и позволяю тестируемому методу изменять это значение, чтобы я мог утверждать его позже. Однако mock.ResponseText
всегда имеет значение «Unset», и метод никогда не меняет своего значения - что здесь происходит?