public void Instance_WhenCreateDelegateSupplied_ShouldReturnInstance() { AmbientServiceNoDefault.Create = () => new Foo(); var sut = new AmbientServiceNoDefault(); var instance = sut.Instance; instance.Should().BeOfType <Foo>(); }
public void Instance_WhenNoDefaultCreateOrCreateSet_ShouldThrow() { var sut = new AmbientServiceNoDefault(); Action instance = () => { var x = sut.Instance; }; instance.ShouldThrow <Exception>(); }
public void Instance_WhenCreateDelegateSupplied_ShouldReturnSameInstanceForAllCalls() { AmbientServiceNoDefault.Create = () => new Foo(); var sut = new AmbientServiceNoDefault(); var instance1 = sut.Instance; var instance2 = sut.Instance; instance1.Should().BeSameAs(instance2); }