Example #1
0
        public static void AddingPersons()
        {
            var docDantist = doctorFactory.GetPerson();

            InitDoctor(docDantist, personId, "Ivan", "Bo", "Junior");
            doctors.Add(docDantist);

            var docSurgeon = doctorFactory.GetPerson();

            InitDoctor(docSurgeon, personId, "Alex", "Tor", "Middle");
            doctors.Add(docSurgeon);

            var n = 10;

            for (var i = 0; i < 10; i++)
            {
                var patient = patientFactory.GetPerson();
                if (i > n / 2)
                {
                    InitPatient(patient, personId, "Name" + i, "LastName" + i, docDantist.Id, i + 10);
                }
                else
                {
                    InitPatient(patient, personId, "Name" + i, "LastName" + i, docSurgeon.Id, i + 10);
                }

                patients.Add(patient);
            }
        }
Example #2
0
        public void GetPersonTest()
        {
            var pf = new PersonFactory();
            var p1 = pf.GetPerson("ibrahim");

            Assert.Equal("ibrahim", p1.Name);
            Assert.Equal(0, p1.Id);
            var p2 = pf.GetPerson("simge");

            Assert.Equal("simge", p2.Name);
            Assert.Equal(1, p2.Id);
        }
Example #3
0
        /// <summary>
        /// Returns a list with the given type of person.
        /// </summary>
        /// <param name="type">
        ///    Type of person
        /// </param>
        /// <param name="min">
        ///    Minimum amount of people
        /// </param>
        /// <param name="max">
        ///    Maximum amount or people
        /// </param>
        /// <returns></returns>
        private List <Person> PopulatePersons(PersonType type, int min, int max)
        {
            var amount = _random.Next(min, max);
            var list   = new List <Person>();

            for (var i = 0; i < amount; i++)
            {
                var person = PersonFactory.GetPerson(type);
                list.Add(person);
            }

            return(list);
        }
        public void DoesFactoryReturnMaidsAndCostumers()
        {
            //arrange
            PersonFactory personFactory = new PersonFactory();
            TempPerson    tempMaid      = new TempPerson();
            TempPerson    tempCustomer  = new TempPerson();
            string        resultMaid;
            string        resultCustomer;

            //act
            IPerson maid         = personFactory.GetPerson("Maid", tempMaid);
            IPerson customer     = personFactory.GetPerson("Customer", tempCustomer);
            Type    typeMaid     = maid.GetType();
            Type    typeCostumer = customer.GetType();

            resultMaid     = typeMaid.Name.ToString();
            resultCustomer = typeCostumer.Name.ToString();

            //assert
            Assert.AreEqual("Maid", resultMaid);
            Assert.AreEqual("Customer", resultCustomer);
        }
Example #5
0
        public void Main()
        {
            Console.WriteLine("Please enter the type of person you wish to create\n" +
                              $"Enter {(int) PersonType.Rural} for {PersonType.Rural.ToString()} and " +
                              $"{(int) PersonType.Urban} for {PersonType.Urban.ToString()}");

            bool validInput = TryParse(Console.ReadLine(), out int input);

            if (!validInput)
            {
                Console.WriteLine("Invalid input");
                return;
            }

            var personInput = (PersonType)input;

            var     factory = new PersonFactory();
            IPerson person  = factory.GetPerson(personInput);

            Console.WriteLine($"Name: {person.GetName()}");
        }
Example #6
0
        public void ShouldBeThreadSafe()
        {
            ArrayList customers = new ArrayList();

            for (int i = 0; i < 10; i++)
            {
                customers.Add(PersonFactory.GetPerson(PersonType.Customer));
            }

            Salesman salesman = new Salesman("Knut");

            for (int i = 0; i < 20; i++)
            {
                salesman.GetItems().Add(ItemFactory.GetRandomItem(salesman));
                salesman.SellItem();
            }

            // Waiting for the logic in other threads to finish
            Thread.Sleep(500);

            int       uniqueCount = 0;
            ArrayList items       = new ArrayList();

            foreach (Customer c in customers)
            {
                foreach (IItem item in c.GetItems())
                {
                    if (!items.Contains(item))
                    {
                        items.Add(item);
                        uniqueCount++;
                    }
                }
            }
            Assert.That(uniqueCount, Is.EqualTo(20));
        }
Example #7
0
        public void ShouldManufactureCustomer()
        {
            var person = PersonFactory.GetPerson(PersonType.Customer);

            Assert.IsInstanceOf(typeof(Customer), person);
        }
Example #8
0
        public void ShouldManufactureSalesman()
        {
            var person = PersonFactory.GetPerson(PersonType.Salesman);

            Assert.IsInstanceOf(typeof(Salesman), person);
        }