예제 #1
0
        public async Task ProcessRuleAsyncTodoItemNotFound()
        {
            var request  = CreateRequest();
            var response = CreateResponse();

            var rule = new TodoItemNotFoundRule(Context);
            await rule.ProcessAsync(request, response, RuleFactory.CreateEmptyListOfUpdateRules());

            Assert.IsInstanceOfType(rule, typeof(BaseRule <UpdateTodoItemRequest, Response <TodoItemEntity> >));
            Assert.AreEqual(RuleStatusType.Failed, rule.Status);
            Assert.IsFalse(rule.ContinueProcessing);

            VerifyNotification.AssertResponseNotifications(CreateExpectedResponse(), response);
        }
예제 #2
0
        public async Task ProcessRuleAsyncNotProvided()
        {
            var request  = CreateRequestWithNoItem();
            var response = CreateResponse();

            var rule = new RequestRule();
            await rule.ProcessAsync(request, response, RuleFactory.CreateEmptyListOfSaveRules());

            Assert.IsInstanceOfType(rule, typeof(BaseRule <Request <TodoItem>, Response <TodoItemEntity> >));
            Assert.AreEqual(RuleStatusType.Failed, rule.Status);
            Assert.IsFalse(rule.ContinueProcessing);

            VerifyNotification.AssertResponseNotifications(CreateExpectedResponse(), response);
        }
예제 #3
0
        public async Task ProcessRuleAsyncDescriptionNotProvided(string description)
        {
            var request = CreateRequest();

            request.Item.Description = description;
            var response = CreateResponse();

            var rule = new TodoItemDescriptionRule();
            await rule.ProcessAsync(request, response, CreateBaseRulesWithRequiredRules());

            Assert.IsInstanceOfType(rule, typeof(BaseRule <Request <TodoItem>, Response <TodoItemEntity> >));
            Assert.AreEqual(RuleStatusType.Failed, rule.Status);
            Assert.IsTrue(rule.ContinueProcessing);

            VerifyNotification.AssertResponseNotifications(CreateExpectedResponse(), response);
        }
예제 #4
0
        public async Task ProcessRuleAsyncPriorityIsNotInRange(int priority)
        {
            var request = CreateRequest();

            request.Item.Priority = priority;
            var response = CreateResponse();

            var rule = new TodoItemPriorityRule();
            await rule.ProcessAsync(request, response, CreateBaseRulesWithRequiredRules());

            Assert.IsInstanceOfType(rule, typeof(BaseRule <Request <TodoItem>, Response <TodoItemEntity> >));
            Assert.AreEqual(RuleStatusType.Failed, rule.Status);
            Assert.IsTrue(rule.ContinueProcessing);

            VerifyNotification.AssertResponseNotifications(CreateExpectedResponse(), response);
        }