/
GeekNerd
/
ServerModelingProject
Обзор
Документация
Войти
/
GeekNerd
/
ServerModelingProject
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Assets/Plugins/Zenject/OptionalExtras/UnitTests/Editor/BindFeatures/TestBindingInheritanceMethod.cs
92 строки
3 KB
Gorney-Alex
Init
30 май 2026, 19:05
30 май 2026, 19:05
3cdcc49
Код
Авторство
О чём код?
using NUnit.Framework; using Assert = ModestTree.Assert; namespace Zenject.Tests.Other { [TestFixture] public class TestBindingInheritanceMethod : ZenjectUnitTestFixture { [Test] public void TestNoCopy() { Container.Bind<Foo>().AsSingle(); var sub1 = Container.CreateSubContainer(); Assert.IsEqual(sub1.Resolve<Foo>(), Container.Resolve<Foo>()); } [Test] public void TestCopyIntoAll1() { Container.Bind<Foo>().AsSingle().CopyIntoAllSubContainers(); var sub1 = Container.CreateSubContainer(); Assert.IsNotEqual(sub1.Resolve<Foo>(), Container.Resolve<Foo>()); } [Test] public void TestCopyIntoAll2() { Container.Bind<IBar>().To<Bar>().FromResolve().CopyIntoAllSubContainers(); Container.Bind<Bar>().AsSingle(); var sub1 = Container.CreateSubContainer(); Assert.IsEqual(Container.ResolveAll<IBar>().Count, 1); Assert.IsEqual(sub1.ResolveAll<IBar>().Count, 2); } [Test] public void TestCopyDirect1() { Container.Bind<Foo>().AsSingle().CopyIntoDirectSubContainers(); var sub1 = Container.CreateSubContainer(); var sub2 = sub1.CreateSubContainer(); Assert.That(Container.HasBindingId(typeof(Foo), null, InjectSources.Local)); Assert.That(sub1.HasBindingId(typeof(Foo), null, InjectSources.Local)); Assert.That(!sub2.HasBindingId(typeof(Foo), null, InjectSources.Local)); } [Test] public void TestMoveDirect1() { Container.Bind<Foo>().AsSingle().MoveIntoDirectSubContainers(); var sub1 = Container.CreateSubContainer(); var sub2 = sub1.CreateSubContainer(); Assert.That(!Container.HasBindingId(typeof(Foo), null, InjectSources.Local)); Assert.That(sub1.HasBindingId(typeof(Foo), null, InjectSources.Local)); Assert.That(!sub2.HasBindingId(typeof(Foo), null, InjectSources.Local)); } [Test] public void TestMoveAll() { Container.Bind<Foo>().AsSingle().MoveIntoAllSubContainers(); var sub1 = Container.CreateSubContainer(); var sub2 = sub1.CreateSubContainer(); Assert.That(!Container.HasBindingId(typeof(Foo), null, InjectSources.Local)); Assert.That(sub1.HasBindingId(typeof(Foo), null, InjectSources.Local)); Assert.That(sub2.HasBindingId(typeof(Foo), null, InjectSources.Local)); } public interface IBar { } public class Foo { } public class Bar : IBar { } } }