public void TestCanActivate_NullDefinition()
        {
            AlgorithmActivator activator = new AlgorithmActivator(new TestRegistrar());
            bool canActivate             = activator.CanActivate(null);

            Assert.IsFalse(canActivate);
        }
        public void TestCanActivate_NoParameterlessConstructor()
        {
            AlgorithmActivator  activator = new AlgorithmActivator(new TestRegistrar());
            AlgorithmDefinition d         = new AlgorithmDefinition("BadConstructor", null);
            bool canActivate = activator.CanActivate(d);

            Assert.IsFalse(canActivate);
        }
        public void TestCanActivate_NotCached()
        {
            AlgorithmActivator  activator = new AlgorithmActivator(new TestRegistrar());
            AlgorithmDefinition d         = new AlgorithmDefinition("unknown", new Property[] { });
            bool canActivate = activator.CanActivate(d);

            Assert.IsFalse(canActivate);
        }
        public void TestCanActivate_ValidDefinition()
        {
            AlgorithmActivator  activator = new AlgorithmActivator(new TestRegistrar());
            AlgorithmDefinition d         = new AlgorithmDefinition("Test",
                                                                    new Property[] { new Property("Test", typeof(double)) });
            bool canActivate = activator.CanActivate(d);

            Assert.IsTrue(canActivate);
        }