コード例 #1
0
        public void TestMoveIntoDirectSubContainers()
        {
            Container.DeclareSignal <FooSignal>();

            var gorp = new Gorp();

            Container.BindSignal <FooSignal>()
            .ToMethod <Gorp>(x => x.OnFoo).From(b => b.FromInstance(gorp)).MoveIntoDirectSubContainers();
            Container.ResolveRoots();

            var signalBus1 = Container.Resolve <SignalBus>();
            var sent       = new FooSignal();

            Assert.IsNull(gorp.ReceivedValue);
            signalBus1.Fire(sent);
            Assert.IsNull(gorp.ReceivedValue);

            var subContainer = Container.CreateSubContainer();

            subContainer.ResolveRoots();

            var signalBus2 = Container.Resolve <SignalBus>();

            Assert.IsNull(gorp.ReceivedValue);
            signalBus2.Fire(sent);
            Assert.IsEqual(gorp.ReceivedValue, sent);
        }
コード例 #2
0
ファイル: Bar.cs プロジェクト: thangnvdigdinos/Zenject
        public void Init(Foo foo, Gorp gorp)
        {
            Assert.IsNotNull(gorp);
            Assert.IsNotNull(foo);

            Log.Trace("Received decorated bindings in Bar");
        }
コード例 #3
0
        public void TestInstanceMethodHandler2()
        {
            Container.DeclareSignal <FooSignal>();

            var gorp = new Gorp();

            Container.BindSignal <FooSignal>()
            .ToMethod <Gorp>(x => x.OnFoo).From(b => b.FromInstance(gorp));
            Container.ResolveRoots();

            var signalBus = Container.Resolve <SignalBus>();
            var sent      = new FooSignal();

            Assert.IsNull(gorp.ReceivedValue);
            signalBus.Fire(sent);
            Assert.IsEqual(gorp.ReceivedValue, sent);
        }