Sto cercando di costruire una prova contro un metodo eredità che implementano fuori i parametri. Potresti darmi un esempio su come farlo?Moq Esempio di utilizzo fuori e ref necessaria
risposta
Basta assegnare il parametro out
o ref
dal test.
Dato questa interfaccia:
public interface ILegacy
{
bool Foo(out string bar);
}
È possibile scrivere un test come questo:
[TestMethod]
public void Test13()
{
string bar = "ploeh";
var legacyStub = new Mock<ILegacy>();
legacyStub.Setup(l => l.Foo(out bar))
.Returns(true);
Assert.IsTrue(legacyStub.Object.Foo(out bar));
Assert.AreEqual("ploeh", bar);
}
fantastico. Tutto ciò di cui avevo bisogno. Ho solo qualcosa per farmi andare avanti. Una cosa però voi non ha ancora utilizzare la "It.IsAny" roba EG (Foo (fuori it.IsAny
Un sacco di It.Is * nel QuickStart troppo ... - Mi raccomando la lettura regolare della stessa - è solito essere in grado di digerire in un single pass (e stai facendo qualcosa di sbagliato se ti serve tutto in una singola suite di test!) –
@ devnet247: come mai questo non vale un +1 da te - mostra poco rispetto per il tempo di Mark? (Qualcuno ha dato a Q anche un +1 - presumo sia Mark - Ho un -1 per contrastarlo come nessun compito fatto). + 1ing questa risposta. –
Qualche cosa male con il secondo esempio nella parte superiore di http://code.google.com/p/moq/wiki/QuickStart? Dovresti davvero dare esempi di ciò che stai cercando di fare se non hai intenzione di cercare cose come questa.
Ho agree.I apologise.I davvero non so da dove cominciare su questo come il vero e proprio "codice reale" era un po 'complicato e non poteva inviare it.I dovrebbe avere costruire un esempio Noddy myself.Lesson imparato – user9969
+1 I kinda dimenticato anche il quickstart :) –
Per inciso se si desidera utilizzare moq (attualmente) per simulare il parametro di uscita, è necessario eseguire anche il seguente salto del telaio. Diciamo che volevi prendere in giro un parametro out che restituiva un altro oggetto simulato, ad es.
var mockServiceA = new Mock<IMyService>();
var mockServiceOutput = new Mock<IMyServiceOutput>();
// This will not work...
mockServiceA.Setup(svc => svc.DoSomething(out mockServiceOutput.Object));
// To have this work you have to do the following
IMyServiceOutput castOutput = mockServiceOutput.Object;
mockServiceA.Setup(svc => svc.DoSomething(out castOutput));
- 1. beffardo fuori NHibernate QueryOver con Moq
- 2. Utilizzo di FFMPEG e url_fopen esempio
- 3. Utilizzo di un timer C# con Moq
- 4. Esempio di utilizzo TLoginCredentialService
- 5. Che cosa sarebbe un "Ciao, mondo!" esempio per "std :: ref"?
- 6. Moq metodo finto con il parametro di ingresso fuori specifica
- 7. C# ref utilizzo della parola chiave
- 8. Utilizzo di modelli e moduli al di fuori di Django?
- 9. esempio di utilizzo di scala.collection.immutable.Set da java
- 10. Comprensione e relazione tra Box, ref, & e *
- 11. LocationServices Android.GeofencingApi esempio di utilizzo
- 12. Come rendere Moq ignora gli argomenti che sono ref o out
- 13. Sintassi e utilizzo di esempio di _Generic in C11
- 14. Semplice esempio di utilizzo di __setstate__ e __getstate__
- 15. T SQL merge esempio necessaria per aiutare la comprensione
- 16. Utilizzo di ConcurrentHashMap, quando è necessaria la sincronizzazione?
- 17. C# - dovrei usare "ref" per passare una raccolta (ad esempio elenco) facendo riferimento a un metodo?
- 18. Un buon esempio di utilizzo di libpurple?
- 19. Esempio di utilizzo di asserzione in Python?
- 20. Accesso widget di esempio da widget di fuori
- 21. Utilizzo di Moq per testare una classe astratta
- 22. ref e in C++/CLI
- 23. CreateProcessWithTokenW - Esempio di utilizzo in C#
- 24. Tipi generati Esempio di utilizzo del provider
- 25. plug-in avro gradle esempio di utilizzo
- 26. Sintassi Confronto tra Moq e Rhino mazzi
- 27. Test unitario con Moq, Silverlight e NUnit
- 28. XUnit, AutoFixture e Moq best practice
- 29. Utilizzo di JUnit @Rule con ScalaTest (ad esempio TemporaryFolder)
- 30. Come funzionano reference_wrapper e std :: ref?
È necessario chiarire che cosa si sta facendo e perché non funziona come previsto. Solo "Moq with out parameters" non è abbastanza - per cominciare, perché hai bisogno di Moq? Si prega di mostrare un po 'di codice. –
Abbastanza giusto. Devo inventarmi qualcosa in quanto l'ambiente è complicato. Mi chiedevo solo se ci fosse uno snippet completo da qualche parte. Tutto qui. Metterò insieme qualcosa e lo pubblicherò – user9969