예제 #1
0
        public virtual JsonResult GenerateDisplayName(GenerateDisplayNameForm model)
        {
            var query       = Mapper.Map <GenerateDisplayNameQuery>(model);
            var displayName = _services.QueryProcessor.Execute(query);

            return(Json(displayName));
        }
예제 #2
0
            public void ExecutesQuery_ToGenerateDisplayName()
            {
                var model = new GenerateDisplayNameForm
                {
                    Salutation = "Mr",
                    FirstName  = "Adam",
                    MiddleName = "B",
                    LastName   = "West",
                    Suffix     = "Sr.",
                };
                var scenarioOptions = new ScenarioOptions();
                var controller      = CreateController(scenarioOptions);

                scenarioOptions.MockQueryProcessor.Setup(m => m.Execute(
                                                             It.Is(GenerateDisplayNameQueryBasedOn(model))))
                .Returns("derived display name");

                controller.GenerateDisplayName(model);

                scenarioOptions.MockQueryProcessor.Verify(m => m.Execute(
                                                              It.Is(GenerateDisplayNameQueryBasedOn(model))),
                                                          Times.Once());
            }
예제 #3
0
            public void ReturnsJson_WithGeneratedDisplayName()
            {
                const string generatedDisplayName = "generated display name";
                var          model = new GenerateDisplayNameForm
                {
                    Salutation = "Mr",
                    FirstName  = "Adam",
                    MiddleName = "B",
                    LastName   = "West",
                    Suffix     = "Sr.",
                };
                var scenarioOptions = new ScenarioOptions();
                var controller      = CreateController(scenarioOptions);

                scenarioOptions.MockQueryProcessor.Setup(m => m.Execute(
                                                             It.Is(GenerateDisplayNameQueryBasedOn(model))))
                .Returns(generatedDisplayName);

                var result = controller.GenerateDisplayName(model);

                result.ShouldNotBeNull();
                result.ShouldBeType <JsonResult>();
                result.Data.ShouldEqual(generatedDisplayName);
            }
예제 #4
0
            private static Expression <Func <GenerateDisplayNameQuery, bool> > GenerateDisplayNameQueryBasedOn(GenerateDisplayNameForm model)
            {
                Expression <Func <GenerateDisplayNameQuery, bool> > generateDisplayNameQueryBasedOn = q =>
                                                                                                      q.Salutation == model.Salutation &&
                                                                                                      q.FirstName == model.FirstName &&
                                                                                                      q.MiddleName == model.MiddleName &&
                                                                                                      q.LastName == model.LastName &&
                                                                                                      q.Suffix == model.Suffix
                ;

                return(generateDisplayNameQueryBasedOn);
            }