Beispiel #1
0
        public void CheckProducts()
        {
            IPhoneFactory factory = null;

            switch (_manufacturer)
            {
            case Manufacturer.Nokia:
                factory = new NokiaFactory();
                break;

            case Manufacturer.HTC:
                factory = new HTCFactory();
                break;

            case Manufacturer.Samsung:
                factory = new SamsungFactory();
                break;

            default:
                break;
            }

            Console.WriteLine("{0}:\nSmartphone: {1}\nDumb phone: {2}", _manufacturer.ToString(), factory.GetSmart().Name,
                              factory.GetDumb().Name);
        }
Beispiel #2
0
        public void OsTestSamsung(int w, int h, ArrayList add, string name)
        {
            DeviceFactory Factory = new SamsungFactory(name);
            var           Phone   = Factory.CreatePhone(w, h, add);

            var result = "Android";

            Assert.AreEqual(result, Phone.OS);
        }
Beispiel #3
0
        public void SamsungFactory()
        {
            var factory = new SamsungFactory();
            var client  = new MobileClient(factory);

            var normalPhoneRAM = client.GetNormalPhoneRAMDetails();

            Assert.AreEqual(normalPhoneRAM, RAMTypes.NA);

            var smartPhoneRAM = client.GetSmartPhoneRAMDetails();

            Assert.AreEqual(smartPhoneRAM, RAMTypes.ThreeGB);
        }
        static void Main(string[] args)
        {
            IPhoneFactory samsungFactory = new SamsungFactory();
            IPhoneFactory nokiaFactory   = new NokiaFactory();

            var samsungSmartPhone = samsungFactory.GetSmartPhone();
            var samsungDumbPhone  = samsungFactory.GetDumbPhone();
            var nokiaSmartPhone   = nokiaFactory.GetSmartPhone();
            var nokiaDumbPhone    = nokiaFactory.GetDumbPhone();

            samsungSmartPhone.DoSomething();
            samsungDumbPhone.DoSomething();
        }
Beispiel #5
0
            public void Main()
            {
                ConcretePhoneFactory concretePhoneFactory = new AppleFactory();
                ProducePhone         producePhone         = new ProducePhone(concretePhoneFactory);

                producePhone.MountMotherBoard();
                producePhone.MountCamera();

                ConcretePhoneFactory concretePhoneFactory2 = new SamsungFactory();
                ProducePhone         producePhone2         = new ProducePhone(concretePhoneFactory);

                producePhone2.MountMotherBoard();
                producePhone2.MountCamera();
            }
Beispiel #6
0
        static void Main(string[] args)
        {
            // HR New Employee Process

            IDeviceFactory factory = new SamsungFactory();

            IMobilePhone phone = factory.CreateMobilePhone();

            phone.Call("+45 12345678");

            ITablet tablet = factory.CreateTablet();

            tablet.PowerOn();
            tablet.PowerOff();
        }
        public static void Perform()
        {
            IPhoneFactory nokiaMobilePhone = new NokiaFactory();
            PhoneClient   nokiaClient      = new PhoneClient(nokiaMobilePhone);

            Console.WriteLine("********* NOKIA **********");
            Console.WriteLine(nokiaClient.GetSmartPhoneDetails());
            Console.WriteLine(nokiaClient.GetNormalPhoneDetails());

            IPhoneFactory samsungMobilePhone = new SamsungFactory();
            PhoneClient   samsungClient      = new PhoneClient(samsungMobilePhone);

            Console.WriteLine("******* SAMSUNG **********");
            Console.WriteLine(samsungClient.GetSmartPhoneDetails());
            Console.WriteLine(samsungClient.GetNormalPhoneDetails());
        }
Beispiel #8
0
        public void TestCreatePhone()
        {
            GalaxyMini      phone   = new GalaxyMini();
            AbstractFactory samsung = new SamsungFactory();

            Assert.AreSame(phone.GetType(), samsung.createPhone().GetType());

            iPhone          applephone = new iPhone();
            AbstractFactory apple      = new AppleFactory();

            Assert.AreSame(applephone.GetType(), apple.createPhone().GetType());

            Lumia           nokiaphone = new Lumia();
            AbstractFactory nokia      = new NokiaFactory();

            Assert.AreSame(nokiaphone.GetType(), nokia.createPhone().GetType());
        }
Beispiel #9
0
        public void SamsungFactoryPositiveTest()
        {
            IPhoneFactory samsungFactory = new SamsungFactory();

            PhoneClient phoneClient     = new PhoneClient(samsungFactory, "SmartPhone");
            var         phoneName       = phoneClient.GetPhoneName();
            var         cordedPhoneName = phoneClient.GetCordedPhoneName();

            PhoneClient phoneClient2     = new PhoneClient(samsungFactory, "BasicPhone");
            var         phoneName2       = phoneClient2.GetPhoneName();
            var         cordedPhoneName2 = phoneClient2.GetCordedPhoneName();

            Assert.AreEqual("SmartPhone", phoneName);
            Assert.AreEqual("HomePhone", cordedPhoneName);
            Assert.AreEqual("BasicPhone", phoneName2);
            Assert.AreEqual("Payphone", cordedPhoneName2);
        }
Beispiel #10
0
        public void TestCreatePhablet()
        {
            LumiaPhab       phablet = new LumiaPhab();
            AbstractFactory nokia   = new NokiaFactory();

            Assert.AreSame(phablet.GetType(), nokia.createPhablet().GetType());

            GalaxyNote      samsungphablet = new GalaxyNote();
            AbstractFactory samsung        = new SamsungFactory();

            Assert.AreSame(samsungphablet.GetType(), samsung.createPhablet().GetType());

            iPhonePlus      applephablet = new iPhonePlus();
            AbstractFactory apple        = new AppleFactory();

            Assert.AreSame(applephablet.GetType(), apple.createPhablet().GetType());
        }
Beispiel #11
0
        public void TestCreateTablet()
        {
            iPad            tablet = new iPad();
            AbstractFactory apple  = new AppleFactory();

            Assert.AreSame(tablet.GetType(), apple.createTablet().GetType());

            LumiaTab        nokiatablet = new LumiaTab();
            AbstractFactory nokia       = new NokiaFactory();

            Assert.AreSame(nokiatablet.GetType(), nokia.createTablet().GetType());

            GalaxyTab       samsungtablet = new GalaxyTab();
            AbstractFactory samsung       = new SamsungFactory();

            Assert.AreSame(samsungtablet.GetType(), samsung.createTablet().GetType());
        }
Beispiel #12
0
        static void Main(string[] args)
        {
            PhoneMakerFactory factory = new PhoneMakerFactory();

            var samsung = new SamsungFactory();

            samsung.GetSmart();
            samsung.GetNormal();


            var htc = factory.GetProducts(enums.HTC);

            htc.GetSmart();
            htc.GetNormal();

            factory.GetProducts(enums.NOKIA);

            Console.Read();
        }
Beispiel #13
0
        static void Main(string[] args)
        {
            string techType = Console.ReadLine();

            ITechnologyAbstractFactory abstractFactory = null;

            if (techType.ToLower() == "samsung")
            {
                abstractFactory = new SamsungFactory();
            }
            else if (techType.ToLower() == "apple")
            {
                abstractFactory = new AppleFactory();
            }

            IMobilePhone mobilePhone = abstractFactory.CreatePhone();
            ITablet      tablet      = abstractFactory.CreateTablet();

            Console.WriteLine(mobilePhone.GetType().Name);
            Console.WriteLine(tablet.GetType().Name);
        }
Beispiel #14
0
        static void Main(string[] args)
        {
            /*
             * Her product için ayrı ayrı Factory class'ları oluşturulur. Bu classlar Client (creator) sınıflardan
             * çağrılarak kullanılır.
             */
            var nokiaFactory = new NokiaFactory();
            var nokiaClient  = new MobileClient(nokiaFactory);

            Console.WriteLine("********* NOKIA **********");
            Console.WriteLine(nokiaClient.GetSmartPhoneModelDetails());
            Console.WriteLine(nokiaClient.GetNormalPhoneModelDetails());

            var samsungFactory = new SamsungFactory();
            var samsungClient  = new MobileClient(samsungFactory);

            Console.WriteLine("******* SAMSUNG **********");
            Console.WriteLine(samsungClient.GetSmartPhoneModelDetails());
            Console.WriteLine(samsungClient.GetNormalPhoneModelDetails());

            Console.ReadKey();
        }
Beispiel #15
0
        public static ISmartphoneFactory GetSmartphoneFactory(SmartphoneFactoryType type, ILogger logger)
        {
            ISmartphoneFactory factory = null;

            switch (type)
            {
            case SmartphoneFactoryType.AppleFactory:
                factory = new AppleFactory(logger);
                break;

            case SmartphoneFactoryType.SamsungFactory:
                factory = new SamsungFactory(logger);
                break;

            case SmartphoneFactoryType.XiaomiFactory:
                factory = new XiaomiFactory(logger);
                break;

            default:
                break;
            }
            return(factory);
        }
Beispiel #16
0
        public void TestCall()
        {
            AbstractFactory samsung = new SamsungFactory();
            IPhone          phone   = samsung.createPhone();
            IPhablet        phablet = samsung.createPhablet();
            SoundPlayer     sp      = new SoundPlayer();

            Assert.AreSame(phone.Call().GetType(), sp.GetType());
            Assert.AreSame(phablet.Call().GetType(), sp.GetType());

            AbstractFactory nokia        = new SamsungFactory();
            IPhone          nokiaphone   = nokia.createPhone();
            IPhablet        nokiaphablet = nokia.createPhablet();

            Assert.AreSame(nokiaphone.Call().GetType(), sp.GetType());
            Assert.AreSame(nokiaphablet.Call().GetType(), sp.GetType());

            AbstractFactory apple        = new SamsungFactory();
            IPhone          applephone   = apple.createPhone();
            IPhablet        applephablet = apple.createPhablet();

            Assert.AreSame(applephone.Call().GetType(), sp.GetType());
            Assert.AreSame(applephablet.Call().GetType(), sp.GetType());
        }
Beispiel #17
0
        static void Main(string[] args)
        {
            var userinput = "";

            WhichCompany();
            userinput = Console.ReadLine();
            int            companyid;
            IMobileFactory factory;

            while (int.TryParse(userinput, out companyid))
            {
                #region AbstractFactory
                switch (companyid)
                {
                case 1:
                    factory = new NokiaFactory();
                    break;

                case 2:
                    factory = new MotorolaFactory();
                    break;

                case 3:
                    factory = new SamsungFactory();
                    break;

                default:
                    factory = null;
                    break;
                }
                #endregion

                if (factory != null)
                {
                    WhatToMake();
                    userinput = Console.ReadLine();
                    int productid;
                    while (int.TryParse(userinput, out productid))
                    {
                        #region AbstractProduct
                        switch (productid)
                        {
                        case 1:
                            IMobile mobile = factory.CreateMobile();
                            mobile.DialNumber(123456789);
                            break;

                        case 2:
                            ICharger charger = factory.CreateCharger();
                            charger.ChargePhone(factory.CreateMobile());
                            break;

                        case 3:
                            IHeadphone headphone = factory.CreateHeadphone();
                            headphone.PlayMusic();
                            break;

                        default:

                            break;
                        }
                        #endregion
                        WhatToMake();
                        userinput = Console.ReadLine();
                    }
                }

                WhichCompany();
                userinput = Console.ReadLine();
            }
        }