示例#1
0
        public void TestGetAllServicesAscendingOrderAfterRemoval()
        {
            TestUtilities.InitializeMixedRealityToolkitAndCreateScenes();

            ITestExtensionService3 service3 = new TestExtensionService3("Service3", 10, null);

            MixedRealityToolkit.Instance.RegisterService <ITestExtensionService3>(service3);

            ITestExtensionService1 service1 = new TestExtensionService1("Service1", 20, null);

            MixedRealityToolkit.Instance.RegisterService <ITestExtensionService1>(service1);

            ITestExtensionService2 service2 = new TestExtensionService2("Service2", 30, null);

            MixedRealityToolkit.Instance.RegisterService <ITestExtensionService2>(service2);

            MixedRealityToolkit.Instance.UnregisterService <ITestExtensionService2>();

            // The order should be service3, service1 because:
            // service3 priority = 10
            // service1 priority = 20
            CollectionAssert.AreEqual(
                new List <IMixedRealityService>()
            {
                service3, service1
            },
                MixedRealityServiceRegistry.GetAllServices());
        }
        public void TestEnableServicesByType()
        {
            // Use the default profile, since we need an input system for this test.
            TestUtilities.InitializeMixedRealityToolkitAndCreateScenes(true);

            // Add test 1 services
            TestExtensionService1 service1 = new TestExtensionService1("Test07-01-1.2", 10, null);

            MixedRealityToolkit.Instance.RegisterService <ITestDataProvider1>(new TestDataProvider1(service1, "Test07-01-1.1", 10));
            MixedRealityToolkit.Instance.RegisterService <ITestExtensionService1>(service1);

            // Add test 2 services
            MixedRealityToolkit.Instance.RegisterService <ITestInputDataProvider>(new TestInputDataProvider(CoreServices.InputSystem, "Test07-01-2.1", 10, null));
            MixedRealityToolkit.Instance.RegisterService <ITestExtensionService2>(new TestExtensionService2("Test07-01-2.2", 10, null));

            // Enable all test services
            MixedRealityToolkit.Instance.EnableAllServicesByType(typeof(ITestService));

            // Tests
            var testServices = MixedRealityToolkit.Instance.GetServices <ITestService>();

            foreach (var service in testServices)
            {
                Assert.IsTrue(service is ITestService);
                Assert.IsTrue((service as ITestService).IsEnabled);
            }
        }