public void Canonical_Moq() { var c = Mock.Of <IC>(); var d = Mock.Of <ID>(); var b = Mock.Of <IB>(x => x.GetC() == c && x.GetD() == d); var a = new MyA(b); Assert.That(a.GetDependencies(), Is.EqualTo((b, c, d))); Mock.Get(b).Verify(x => x.GetC()); Mock.Get(b).Verify(x => x.GetD()); }
public void Canonical_FakeItEasy() { var d = A.Fake <ID>(); var c = A.Fake <IC>(); var b = A.Fake <IB>(); A.CallTo(() => b.GetC()).Returns(c); A.CallTo(() => b.GetD()).Returns(d); var a = new MyA(b); Assert.That(a.GetDependencies(), Is.EqualTo((b, c, d))); A.CallTo(() => b.GetC()).MustHaveHappened(); A.CallTo(() => b.GetD()).MustHaveHappened(); }
public void Canonical_NSubstitute() { var d = Substitute.For <ID>(); var c = Substitute.For <IC>(); var b = Substitute.For <IB>(); b.GetC().Returns(c); b.GetD().Returns(d); var a = new MyA(b); Assert.That(a.GetDependencies(), Is.EqualTo((b, c, d))); b.Received().GetC(); b.Received().GetD(); }