コード例 #1
0
        public void TriggerFiresIfOutsidePeriod()
        {
            var clockMock = new Mock <IClock>();
            var time      = DateTime.Now;

            clockMock.Setup(c => c.Now).Returns(() =>
            {
                time = time.AddMinutes(10);
                return(time);
            });
            var inner = new TriggerStub
            {
                OnCheckAction = () => new IntegrationRequest("Test")
            };
            var trigger = new RollUp(TimeSpan.FromMinutes(5))
            {
                InnerTrigger = inner,
                Clock        = clockMock.Object
            };

            trigger.Reset();
            var request = trigger.Check();

            Assert.IsNotNull(request);
        }
コード例 #2
0
        public void ResetSetsTheNextTime()
        {
            var clockMock = new Mock <IClock>();

            clockMock.Setup(c => c.Now).Returns(() => DateTime.Now);
            var trigger = new RollUp(TimeSpan.FromMinutes(5))
            {
                Clock = clockMock.Object
            };

            trigger.Reset();
            var expected = DateTime.Now.AddMinutes(5);
            var actual   = trigger.NextTime.Value;

            DateTimeAssert.AreEqual(expected, actual, DateTimeCompare.IgnoreSeconds);
        }
コード例 #3
0
        public void ValidateDetectsMissingPeriod()
        {
            var errorAdded = false;
            var trigger    = new RollUp();
            var validation = new ValidationLogStub
            {
                OnAddErrorMessage = (m, a) =>
                {
                    Assert.AreEqual(
                        "No period set - trigger will not fire",
                        m);
                    CollectionAssert.IsEmpty(a);
                    errorAdded = true;
                }
            };

            trigger.Validate(validation);
            Assert.IsTrue(errorAdded);
        }
        public void ValidResults()
        {
            //Target
            Entity targetEntity = new Entity {
                LogicalName = "lat_rollupentity", Id = Guid.NewGuid()
            };

            targetEntity["lat_parentrollup"] = new EntityReference("lat_rollupentity", Guid.NewGuid());

            //Expected value(s)
            const int expected = 2;

            var serviceMock = new Mock <IOrganizationService>();

            serviceMock = ValidResultsSetup(serviceMock);
            int count = RollUp.GetChildRollUps(new EntityReference(), serviceMock.Object).Entities.Count;

            //Test(s)
            Assert.AreEqual(count, expected);
        }