Beispiel #1
0
 /// <summary>
 /// Directors responsibility is to call get the people list from the cache or build a new object from the database.
 /// </summary>
 /// <returns>IEnumerable of People </returns>
 public PeopleDirector(
     IPersonRepository repository,
     IPeopleBuilder builder,
     IPeopleServiceClient client
     )
 {
     _repository = repository;
     _builder    = builder;
     _client     = client;
 }
Beispiel #2
0
 /// <summary>
 /// People Builder builds the people list.
 /// The Director has requested a build
 /// </summary>
 /// <param name="client"></param>
 public PeopleBuilder(
     IPeopleServiceClient client)
 {
     _client = client;
 }
Beispiel #3
0
        public void PeopleDirectorShouldReturnAListOfOne()
        {
            //arrange

            /* ---------------
             * MOCK the repo
             * ---------------
             */
            var mockRepo = new Mock <IPersonRepository>();

            mockRepo.Setup(framework => framework.GetPeople())
            .Returns(new List <Person>()
            {
                new Person()
                {
                    FirstName = "Tester"
                }
            });
            IPersonRepository mockedRepo = mockRepo.Object;


            /* ---------------
             * MOCK the Builder
             * ---------------
             */
            var list = new List <Person>()
            {
                new Person()
                {
                    FirstName = "Fake",
                    LastName  = "Fake N",
                    Email     = "*****@*****.**",
                    Gender    = Gender.Male,
                    Address   = null,
                    Phone     = "434-333-3333",
                    Picture   = null
                }
            };
            var mockBuilder = new Mock <IPeopleBuilder>();

            mockBuilder.Setup(framework => framework.BuildPeople())
            .Returns(list);
            IPeopleBuilder mockedbuilder = mockBuilder.Object;


            /* ---------------
             * MOCK the Service Client
             * ---------------
             */
            var mockService = new Mock <IPeopleServiceClient>();

            mockService.Setup(framework => framework.GetPeople())
            .Returns(list);
            IPeopleServiceClient mockedService = mockService.Object;


            //Build necessary structure
            IPeopleServiceClient serviceClient = new PeopleServiceClient(mockedRepo);
            IPeopleBuilder       builder       = new PeopleBuilder(mockedService)
            {
            };
            IPeopleDirector director = new PeopleDirector(mockedRepo, builder, serviceClient)
            {
            };

            //get the people
            IEnumerable <Person> people = director.BuildPeople();

            var count      = 0;
            var enumerator = people.GetEnumerator();

            while (enumerator.MoveNext())
            {
                var current = enumerator.Current;
                count++;
            }

            //act
            int result = 1;

            //assert
            Assert.Equal(result, count);
        }
Beispiel #4
0
        public void PeopleBuilderShouldReturnOnePerson()
        {
            /* ---------------
             * MOCK the repo
             * ---------------
             */
            var mockRepo = new Mock <IPersonRepository>();

            mockRepo.Setup(framework => framework.GetPeople())
            .Returns(new List <Person>()
            {
                new Person()
                {
                    FirstName = "Tester"
                }
            });
            IPersonRepository mockedRepo = mockRepo.Object;


            /* ---------------
             * MOCK the Builder
             * ---------------
             */
            var list = new List <Person>()
            {
                new Person()
                {
                    FirstName = "Fake",
                    LastName  = "Fake N",
                    Email     = "*****@*****.**",
                    Gender    = Gender.Male,
                    Address   = null,
                    Phone     = "434-333-3333",
                    Picture   = null
                }
            };
            var mockBuilder = new Mock <IPeopleBuilder>();

            mockBuilder.Setup(framework => framework.BuildPeople())
            .Returns(list);
            IPeopleBuilder mockedbuilder = mockBuilder.Object;


            /* ---------------
             * MOCK the Service Client
             * ---------------
             */
            var mockService = new Mock <IPeopleServiceClient>();

            mockService.Setup(framework => framework.GetPeople())
            .Returns(list);
            IPeopleServiceClient mockedService = mockService.Object;


            //Build necessary structure
            IPeopleServiceClient serviceClient = new PeopleServiceClient(mockedRepo);
            IPeopleBuilder       builder       = new PeopleBuilder(mockedService)
            {
            };


            IEnumerable <Person> people = builder.BuildPeople();

            //act
            Console.WriteLine($"------------------ ACTING -- Count of how many people in the list : {((List<Person>)people).Count}");
            var result = ((List <Person>)people).Count > 0;

            //assert
            Assert.True(result);
        }