public FakeManagerProviderTests()
        {
            this.fakeManagerFactory  = A.Fake <FakeManager.Factory>();
            this.fakeManagerAccessor = A.Fake <IFakeManagerAccessor>();
            this.typeOfFake          = A.Fake <Type>();
            this.proxyOptions        = A.Fake <IProxyOptions>();

            this.fakeManagerProvider = new FakeManagerProvider(
                this.fakeManagerFactory,
                this.fakeManagerAccessor,
                this.typeOfFake,
                this.proxyOptions);

            this.proxy       = new object();
            this.fakeManager = new FakeManager(typeof(int), this.proxy, null);
            A.CallTo(() => this.fakeManagerFactory(A <Type> ._, this.proxy, A <string> .Ignored)).Returns(this.fakeManager);
        }
        private static FakeManager GetInitializedFakeManager(FakeManagerProvider fakeManagerProvider)
        {
            var fieldInfo = fakeManagerProvider.GetType().GetField("initializedFakeManager", BindingFlags.NonPublic | BindingFlags.Instance);

            return((FakeManager)fieldInfo.GetValue(fakeManagerProvider));
        }