示例#1
0
        public void TestDelegateDecision()
        {
            using (var fake = new AutoFake())
            {
                var      provider             = fake.Resolve <IServiceLocator>();
                var      transitionRepository = new InMemoryRepository <Transition>(new List <Transition>());
                FakeNode node = new FakeNode();
                transitionRepository.Add(new Transition()
                {
                    From = node, Name = "pass"
                });
                A.CallTo(() => provider.GetInstance <IRepository <Transition> >()).Returns(transitionRepository);
                ServiceLocator.SetLocatorProvider(() => provider);

                DelegationHelper delegationHelper = new DelegationHelper();

                DelegationDef delegationDef = new DelegationDef();
                delegationDef.ClassName = "DecisionTest";

                ExecutionContext context = new ExecutionContext(null, null, null);
                context.Node = node;

                Assert.AreEqual("pass", delegationHelper.DelegateDecision(delegationDef, context).Name);
            }
        }
            public ITreeNode Add(string text)
            {
                var node = new FakeNode {
                    Text = text
                };

                nodes.Add(node);
                return(node);
            }
示例#3
0
        public void SearchAssemblyExtractorErrorTest()
        {
            var(_, extractor) = "test".GetFullAssemblyQuery();

            var node   = new FakeNode();
            var record = new FakeRecord(new Dictionary <string, object> {
                ["badName"] = node
            });

            Assert.ThrowsException <KeyNotFoundException>(() => _ = extractor.Invoke(record));
        }
示例#4
0
        public void SearchAssemblyExtractorTest()
        {
            var(_, extractor) = "test".GetSearchAssembliesQuery();

            var node = new FakeNode
            {
                Properties = new Dictionary <string, object>
                {
                    ["name"]         = "test",
                    ["isNative"]     = true,
                    ["creationDate"] = new LocalDateTime(2020, 1, 2, 3, 4, 5)
                }
            };

            var record = new FakeRecord(new Dictionary <string, object> {
                ["a"] = node
            });

            var result = extractor.Invoke(record);

            Assert.AreEqual("test", result.name);
            Assert.AreEqual(true, result.isNative);
            Assert.AreEqual(new LocalDateTime(2020, 1, 2, 3, 4, 5), result.creationDate);
        }