Pytania otagowane jako moq

Moq jest silnie wpisanym i minimalistycznym frameworkiem mockującym dla .NET.


3
Zwracana wartość, która została przekazana do metody
Mam metodę interfejsu: string DoSomething(string whatever); Chcę się z tego wyśmiewać za pomocą MOQ, aby zwracało to, co zostało przekazane - coś w stylu: _mock.Setup( theObject => theObject.DoSomething( It.IsAny<string>( ) ) ) .Returns( [the parameter that was passed] ) ; Jakieś pomysły?
390 c#  mocking  moq 

4
Jak mogę powiedzieć Moq, aby zwrócił zadanie?
Mam interfejs, który deklaruje Task DoSomethingAsync(); Używam MoqFramework do moich testów: [TestMethod()] public async Task MyAsyncTest() { Mock<ISomeInterface> mock = new Mock<ISomeInterface>(); mock.Setup(arg => arg.DoSomethingAsync()).Callback(() => { <my code here> }); ... } Następnie w teście wykonuję kod, który się wywołuje await DoSomethingAsync(). A test po prostu kończy się niepowodzeniem …

11
Przypisywanie parametrów out / ref w Moq
Czy można przypisać parametr out/ refprzy użyciu Moq (3.0+)? Patrzyłem na używanie Callback(), ale Action<>nie obsługuje parametrów ref, ponieważ jest oparty na ogólnych. Wolałbym również umieścić ograniczenie ( It.Is) na wejściu refparametru, chociaż mogę to zrobić w wywołaniu zwrotnym. Wiem, że Rhino Mocks obsługuje tę funkcję, ale projekt, nad którym …
293 c#  parameters  moq  ref  out 

7
Różne wartości zwracane za pierwszym i drugim razem z Moq
Mam taki test: [TestCase("~/page/myaction")] public void Page_With_Custom_Action(string path) { // Arrange var pathData = new Mock<IPathData>(); var pageModel = new Mock<IPageModel>(); var repository = new Mock<IPageRepository>(); var mapper = new Mock<IControllerMapper>(); var container = new Mock<IContainer>(); container.Setup(x => x.GetInstance<IPageRepository>()).Returns(repository.Object); repository.Setup(x => x.GetPageByUrl<IPageModel>(path)).Returns(() => pageModel.Object); pathData.Setup(x => x.Action).Returns("myaction"); pathData.Setup(x => x.Controller).Returns("page"); …
262 c#  unit-testing  nunit  moq 

3
Użycie Moq do wyszydzenia metody asynchronicznej dla testu jednostkowego
Testuję metodę usługi, która wykonuje APIpołączenie internetowe . Używanie normalnego HttpClientdziała dobrze w testach jednostkowych, jeśli lokalnie uruchamiam również usługę internetową (znajdującą się w innym projekcie w rozwiązaniu). Jednak po wpisaniu zmian serwer kompilacji nie będzie miał dostępu do usługi sieci Web, więc testy zakończą się niepowodzeniem. Rozwiązałem ten problem …

6
Dlaczego otrzymuję wyjątek z komunikatem „Nieprawidłowa konfiguracja na elemencie niewirtualnym (nadpisywalnym w VB)…”?
Mam test jednostkowy, w którym muszę mockować metodę niewirtualną, która zwraca typ bool public class XmlCupboardAccess { public bool IsDataEntityInXmlCupboard(string dataId, out string nameInCupboard, out string refTypeInCupboard, string nameTemplate = null) { return IsDataEntityInXmlCupboard(_theDb, dataId, out nameInCupboard, out refTypeInCupboard, nameTemplate); } } Mam więc pozorowany obiekt XmlCupboardAccessklasy i próbuję skonfigurować …
176 c#  unit-testing  moq 

7
Mockowanie metod rozszerzeń za pomocą Moq
Mam już istniejący interfejs ... public interface ISomeInterface { void SomeMethod(); } i rozszerzyłem tę intreface za pomocą miksera ... public static class SomeInterfaceExtensions { public static void AnotherMethod(this ISomeInterface someInterface) { // Implementation here } } Mam klasę, która to nazywa, którą chcę przetestować ... public class Caller { …


5
Weryfikacja określonego parametru za pomocą Moq
public void SubmitMessagesToQueue_OneMessage_SubmitSuccessfully() { var messageServiceClientMock = new Mock<IMessageServiceClient>(); var queueableMessage = CreateSingleQueueableMessage(); var message = queueableMessage[0]; var xml = QueueableMessageAsXml(queueableMessage); messageServiceClientMock.Setup(proxy => proxy.SubmitMessage(xml)).Verifiable(); //messageServiceClientMock.Setup(proxy => proxy.SubmitMessage(It.IsAny<XmlElement>())).Verifiable(); var serviceProxyFactoryStub = new Mock<IMessageServiceClientFactory>(); serviceProxyFactoryStub.Setup(proxyFactory => proxyFactory.CreateProxy()).Returns(essageServiceClientMock.Object); var loggerStub = new Mock<ILogger>(); var client = new MessageClient(serviceProxyFactoryStub.Object, loggerStub.Object); client.SubmitMessagesToQueue(new List<IMessageRequestDTO> {message}); //messageServiceClientMock.Verify(proxy …
170 c#  unit-testing  nunit  moq 


3
Używanie Moq do określenia, czy wywoływana jest metoda
Rozumiem, że mogę sprawdzić, czy wywołanie metody nastąpi, jeśli wywołam metodę wyższego poziomu, tj .: public abstract class SomeClass() { public void SomeMehod() { SomeOtherMethod(); } internal abstract void SomeOtherMethod(); } Chcę sprawdzić, czy jeśli zadzwonię SomeMethod(), spodziewam się, że SomeOtherMethod()zostanie wezwany. Czy mam rację, myśląc, że ten rodzaj testu …
159 c#  .net  unit-testing  mocking  moq 

1
Sprawdź wywołanie metody przy użyciu Moq
Jestem całkiem nowy w testowaniu jednostkowym w C # i uczę się używać Moq. Poniżej znajduje się klasa, którą próbuję przetestować. class MyClass { SomeClass someClass; public MyClass(SomeClass someClass) { this.someClass = someClass; } public void MyMethod(string method) { method = "test" someClass.DoSomething(method); } } class Someclass { public DoSomething(string …
142 c#  testing  methods  moq 

3
Moq mock metoda bez określania parametru wejściowego
Mam kod w teście przy użyciu Moq: public class Invoice { ... public bool IsInFinancialYear(FinancialYearLookup financialYearLookup) { return InvoiceDate >= financialYearLookup.StartDate && InvoiceDate <= financialYearLookup.EndDate; } ... } Więc w teście jednostkowym próbuję kpić z tej metody i sprawić, by zwróciła prawdę mockInvoice.Setup(x => x.IsInFinancialYear()).Returns(true); Czy jest tak, aby napisać …
138 c#  mocking  moq 

13
Jak przeprowadzić testy jednostkowe za pomocą ILogger w ASP.NET Core
To jest mój kontroler: public class BlogController : Controller { private IDAO<Blog> _blogDAO; private readonly ILogger<BlogController> _logger; public BlogController(ILogger<BlogController> logger, IDAO<Blog> blogDAO) { this._blogDAO = blogDAO; this._logger = logger; } public IActionResult Index() { var blogs = this._blogDAO.GetMany(); this._logger.LogInformation("Index page say hello", new object[0]); return View(blogs); } } Jak widać, …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.