Junior — Middle
Kde sa v testoch implementuje logika správania objektov?
sobes.tech AI
Odpoveď od AI
Logika správania objektov v testoch sa zvyčajne realizuje pomocou mockov alebo stubov. Ide o špeciálne objekty, ktoré napodobňujú správanie skutočných závislostí, umožňujúc kontrolu ich odpovedí a overovanie interakcií.
V C# sa často používajú knižnice ako Moq. V testoch sa vytvárajú mock objekty, nastavujú ich správanie (napríklad, čo má metóda vrátiť) a overuje sa, či testovaný objekt správne s nimi spolupracuje.
Príklad s Moq:
var mockRepository = new Mock<IRepository>();
mockRepository.Setup(r => r.GetData()).Returns("Testovacie dáta");
var service = new MyService(mockRepository.Object);
var result = service.ProcessData();
mockRepository.Verify(r => r.GetData(), Times.Once);
Assert.AreEqual("Spracované: Testovacie dáta", result);
Týmto spôsobom je logika správania objektov v testoch realizovaná prostredníctvom konfigurácie a overovania správania mockov, nie prostredníctvom skutočných implementácií.