Пример #1
0
        public void InitializeDependencies_InitializesGFXFiles()
        {
            var unityContainer = new UnityContainer();

            unityContainer.RegisterType <IPEFileCollection>(new ContainerControlledLifetimeManager(),
                                                            new InjectionFactory(c => CreatePEFileCollection()));
            var container = new GraphicsDependencyContainer();

            var file1Mock = new Mock <IPEFile>();

            file1Mock.Setup(x => x.Initialized).Returns(true);
            var file2Mock = new Mock <IPEFile>();

            file2Mock.Setup(x => x.Initialized).Returns(true);
            var file3Mock = new Mock <IPEFile>();

            file3Mock.Setup(x => x.Initialized).Returns(true);

            _gfxFiles.Add(GFXTypes.PreLoginUI, file1Mock.Object);
            _gfxFiles.Add(GFXTypes.PostLoginUI, file2Mock.Object);
            _gfxFiles.Add(GFXTypes.MapTiles, file3Mock.Object);

            container.InitializeDependencies(unityContainer);

            Mock.Get(unityContainer.Resolve <IPEFileCollection>())
            .Verify(x => x.PopulateCollectionWithStandardGFX(), Times.Once);
            file1Mock.Verify(x => x.Initialize(), Times.Once);
            file2Mock.Verify(x => x.Initialize(), Times.Once);
            file3Mock.Verify(x => x.Initialize(), Times.Once);
        }
Пример #2
0
        public void RegistersDependencies_DoesRegistrations()
        {
            var unityContainer = new UnityContainer();
            var container      = new GraphicsDependencyContainer();

            container.RegisterDependencies(unityContainer);

            Assert.AreNotEqual(0, unityContainer.Registrations.Count());
        }
Пример #3
0
        public void InitializeDependencies_PEFileInitializeIsFalse_ExpectLibraryLoadException()
        {
            var unityContainer = new UnityContainer();

            unityContainer.RegisterType <IPEFileCollection>(new InjectionFactory(c => CreatePEFileCollection()));
            var container = new GraphicsDependencyContainer();

            var file1Mock = new Mock <IPEFile>();

            file1Mock.Setup(x => x.Initialized).Returns(false);
            _gfxFiles.Add(GFXTypes.PreLoginUI, file1Mock.Object);

            Assert.Throws <LibraryLoadException>(() => container.InitializeDependencies(unityContainer));
        }