Мне нужно реализовать подделки для модульного тестирования одного из моих методов. Проблема метода мне нужно тест вызывает метод класса и получает некоторую систему parameters.Scenario, как показано ниже:Необходимо создать подделки для класса, который управляет результатами интерфейса в инструменте тестирования модулей Microsoft, используя C#
Class A(){
public void method xx(){
//This needs to be tested.
//This method makes a call to retrieve some informations. The call is like
below:
String culture=Api.GetEnvironmentData().GetCulture();
//This is the problem area.
boolean implmentApi=Api.GetEnvironmentData().DoImplmentApi();
//This is the problem area.
}
}
Этот метод GetEnvironmentData что-то вроде этого:
public static EnvironmentData GetEnvironmentData()
{
return GetDiContainer().Resolve<EnvironmentData >();
}
EnvironmentData класс что-то вроде это:
public class EnvironmentData(){
public EnvironmentData(IEnvironmentDataProvider EnvironmentDataProvider){
//
}
}
я могу фальсифицировать, используя MOQ IEnvironmentDataProvider, но я не в состоянии понять, как подделать класс EnvironmentData. Мне нужно подделать класс EnvironmentData, потому что он обрабатывал результаты IEnvironmentDataProvider на основе различных вызовов методов. Например, как GetCulture, так и DoImplmentApi вызывают метод getData интерфейса IEnvironmentDataProvider, а затем отбрасывают их соответствующим образом. Теперь, когда я подделываю IEnvironmentDataProvider и возвращаю некоторое значение, я не могу контролировать, что возвращать, когда GetCulture и когда вызывается DoImplmentApi.
Может кто-нибудь предложить, как реализовать подделки для вышеуказанного сценария.
Вы это с тегами [Microsoft-подделками], но вы говорите об использовании MOQ. Итак, какой из них вы используете? –
Привет, Джек. Я пытаюсь сделать это с помощью nubit и moq .... Я хочу установить что-то вроде подделок Microsoft или, возможно, даже использовать в nunit. Вот почему я отметил это так. – Azmi