После этого прототипа для модульного тестирования Я столкнулся с проблемой при использовании взаимодействия JS.
[Test]
public void ExampleTest()
{
var component = host.AddComponent<MyComponent>();
}
Простое добавление компонента, использующего IJSRuntime, приведет к следующему исключению
System.InvalidOperationException: Невозможно предоставить значение для свойства 'JsRuntime' для типа 'Application.Components.MyComponent'. Не существует зарегистрированного сервиса типа «Microsoft.JSInterop.IJSRuntime».
Взаимодействие JS не делает ничего интересного, это просто пустая функция, которая фокусирует элемент - мне все равноо тестировании, я просто хочу иметь возможность приступить к написанию тестов для самого компонента.
Как я могу использовать Moq для насмешки IJSRuntime?
Когда я пытаюсь что-то вроде
[Test]
public void ExampleTest()
{
var jsRuntimeMock = new Mock<IJSRuntime>();
host.AddService(jsRuntimeMock);
var component = host.AddComponent<MyComponent>();
}
Я все еще получаю исключение