コード例 #1
0
        public void OlderThanDateRecordsAreSelected()
        {
            // Arrange
            var tomorrow = DateTime.Today + new TimeSpan(1, 0, 0, 0);
            List <IPersistedScriptExecutionRecord> records = new List <IPersistedScriptExecutionRecord>();

            for (int i = 1; i <= 25; i++)
            {
                var recordMock = new Mock <IPersistedScriptExecutionRecord>();
                recordMock.Setup(r => r.LastUpdateDate).Returns(tomorrow - new TimeSpan(i, 0, 0, 0));
                records.Add(recordMock.Object);
            }

            // Act
            var rule   = new OlderThanRetentionRule(new TimeSpan(20, 0, 0, 0));
            var actual = rule.Evaluate(records.ToArray());

            // Assert
            Assert.AreEqual(5, actual.Length);
            Assert.IsNotNull(actual.Select(r => r.LastUpdateDate == (tomorrow - new TimeSpan(25))));
            Assert.IsNotNull(actual.Select(r => r.LastUpdateDate == (tomorrow - new TimeSpan(24))));
            Assert.IsNotNull(actual.Select(r => r.LastUpdateDate == (tomorrow - new TimeSpan(23))));
            Assert.IsNotNull(actual.Select(r => r.LastUpdateDate == (tomorrow - new TimeSpan(22))));
            Assert.IsNotNull(actual.Select(r => r.LastUpdateDate == (tomorrow - new TimeSpan(21))));
        }
コード例 #2
0
        public void EvaluateReturnsNullOnEmptyInput()
        {
            // Arrange
            var rule = new OlderThanRetentionRule(new TimeSpan(20, 0, 0, 0));

            // Act
            var actual = rule.Evaluate(new IPersistedScriptExecutionRecord[] {});

            // Assert
            Assert.IsNull(actual);
        }
コード例 #3
0
        public void EvaluateReturnsNullOnNullInput()
        {
            // Arrange
            var rule = new OlderThanRetentionRule(new TimeSpan(20, 0, 0, 0));

            // Act
            var actual = rule.Evaluate(null);

            // Assert
            Assert.IsNull(actual);
        }