Пример #1
0
        public void MakeCoffee_MakingCoffee_ReducesCoffeeAndWaterByTen()
        {
            var sut = new SmartHouse("Best Street 123");

            sut.MoccaMaster.TurnOn();
            Assert.AreEqual(90, sut.MoccaMaster.Water);
            Assert.AreEqual(90, sut.MoccaMaster.CoffeePowder);
        }
Пример #2
0
        public List <SmartHouse> UpdateSwitch([FromBody] SmartHouse smartHouse)
        {
            SmartHouse mySwitch = DbContext.SmartHouse.Where(p => p.SmartHouseId == smartHouse.SmartHouseId).Select(p => p).FirstOrDefault();

            mySwitch.SmartHouseIsClosed = smartHouse.SmartHouseIsClosed;
            DbContext.SaveChanges();
            return(GetSwitchList());
        }
Пример #3
0
 public void OpenCloseDoor(bool isOpen)
 {
     if (isOpen)
     {
         SmartHouse myDoor = DbContext.SmartHouse.Where(p => p.SmartHouseType == 2).Select(p => p).FirstOrDefault();
         myDoor.SmartHouseIsClosed = false;
     }
     else
     {
         SmartHouse myDoor = DbContext.SmartHouse.Where(p => p.SmartHouseType == 2).Select(p => p).FirstOrDefault();
         myDoor.SmartHouseIsClosed = true;
     }
     DbContext.SaveChanges();
 }
Пример #4
0
        public void TestFacialRecognition()
        {
            // Arrange
            SmartHouse smartHouse = new SmartHouse("Best Street 123");

            smartHouse.AddDoor(new Door(smartHouse, "Front Door"));
            Resident Daniel = new Resident("Daniel");

            Daniel.SetFace(new Face(20, 15, new Colors("Blue"), new Colors("Brown")));
            smartHouse.AddResident(Daniel);

            // Act && Assert
            Assert.IsTrue(smartHouse.GetDoors()[0].UnlockDoor(Daniel.GetFace()));
        }
Пример #5
0
        static void Main(string[] args)
        {
            Console.WriteLine("Observer");
            Console.WriteLine("Observer Stock Example");

            var person     = new Person();
            var smartHouse = new SmartHouse(person);

            person.GoToWork();
            Thread.Sleep(5000);
            person.LeaveWork();
            Thread.Sleep(5000);
            person.ArriveAtHome();
        }
Пример #6
0
        public SmartHouse CloseDoor([FromBody] SmartHouseUser user)
        {
            var userFound = DbContext.SmartHouseUser.Where(p => p.SmartHouseUserCode == user.SmartHouseUserCode && p.SmartHouseUserIsDesactivated != true).Select(p => p).FirstOrDefault();

            if (userFound != null)
            {
                SmartHouse mySwitch = DbContext.SmartHouse.Where(p => p.SmartHouseType == 2).Select(p => p).FirstOrDefault();
                mySwitch.SmartHouseIsClosed = true;
                DbContext.SmartHouseEntry.Add(new SmartHouseEntry()
                {
                    SmartHouseEntryDate = DateTime.Now, SmartHouseUserId = userFound.SmartHouseUserId, SmartHouseEntryType = "Close"
                });
                DbContext.SaveChanges();
            }

            return(GetDoorSwitch());
        }
Пример #7
0
        static void Main(string[] args)
        {
            var houses = new House[2];

            houses[0] = new NormalHouse();
            houses[1] = new SmartHouse();

            foreach (var house in houses)
            {
                Console.WriteLine("\n" + house.GetType().Name + "--");
                foreach (var function in house.Functions)
                {
                    Console.WriteLine(" " + function.GetType().Name);
                }
            }

            Console.ReadKey();
        }
Пример #8
0
		static void Main(string[] args)
		{
			ISmartHouse sh = new SmartHouse();
			sh.AddDevice(new SmartLamp("l1", new Dimmer(100, 10, 10)));
			sh.AddDevice(new SmartLamp("l2", new Dimmer(100, 10, 15)));
			sh.AddDevice(new Fridge("fr", new Dimmer(0, -5, 1)));
			sh.AddDevice(new Clock("clk"));
			sh["fr"].On();
			sh["clk"].On();
			(sh["fr"] as IHaveThermostat).DecreaseTemperature();

			CommandMenu cm = new CommandMenu(sh);
			IMenu add = new MenuAdd();
			IMenu bri = new MenuBrightness();
			IMenu temp = new MenuTemperature();

			cm.AddSubmenu(add);
			cm.AddSubmenu(new MenuRemove());
			cm.AddSubmenu(new MenuOn());
			cm.AddSubmenu(new MenuOff());
			cm.AddSubmenu(new MenuBreak());
			cm.AddSubmenu(new MenuRepare());
			cm.AddSubmenu(bri);
			cm.AddSubmenu(temp);
			cm.AddSubmenu(new MenuOpen());
			cm.AddSubmenu(new MenuClose());

			add.AddSubmenu(new MenuAddLamp());
			add.AddSubmenu(new MenuAddFridge());
			add.AddSubmenu(new MenuAddClock());

			bri.AddSubmenu(new MenuBrightnessDecrease());
			bri.AddSubmenu(new MenuBrightnessIncrease());
			bri.AddSubmenu(new MenuBrightnessSet());

			temp.AddSubmenu(new MenuTemperatureIncrease());
			temp.AddSubmenu(new MenuTemperatureDecrease());
			temp.AddSubmenu(new MenuTemperatureSet());

			cm.Show();
		}
Пример #9
0
        protected void btnAddDevice_OnClick(object sender, EventArgs e)
        {
            ISmartHouseCreator shc = Manufacture.GetManufacture(Assembly.Load("SmartHouse"));

            string name;

            name = (FindControl(idName) as TextBox).Text.ToLower();

            ISmartDevice dev = shc.CreateDevice(DevType, name);

            //TODO: Вот где-то здесь какая-то верификация должна быть. Наверное.

            if (dev is IHaveThermostat)
            {
                int             min, max, step;
                IHaveThermostat iterm = dev as IHaveThermostat;

                TextBox tbMin  = FindControl(idTempMin) as TextBox;
                TextBox tbMax  = FindControl(idTempMax) as TextBox;
                TextBox tbStep = FindControl(idTempStep) as TextBox;

                if (!int.TryParse(tbMax.Text, out max))
                {
                    int.TryParse(tbMax.Attributes["placeholder"], out max);
                }
                if (!int.TryParse(tbMin.Text, out min))
                {
                    int.TryParse(tbMin.Attributes["placeholder"], out min);
                }
                if (!int.TryParse(tbStep.Text, out step))
                {
                    int.TryParse(tbStep.Attributes["placeholder"], out step);
                }

                iterm.TempMax     = max;
                iterm.TempMin     = min;
                iterm.TempStep    = step;
                iterm.Temperature = max;
            }

            if (dev is IBrightable)
            {
                int         min, max, step;
                IBrightable ibri = dev as IBrightable;

                TextBox tbMin  = FindControl(idBrightMin) as TextBox;
                TextBox tbMax  = FindControl(idBrightMax) as TextBox;
                TextBox tbStep = FindControl(idBrightStep) as TextBox;

                if (!int.TryParse(tbMax.Text, out max))
                {
                    int.TryParse(tbMax.Attributes["placeholder"], out max);
                }
                if (!int.TryParse(tbMin.Text, out min))
                {
                    int.TryParse(tbMin.Attributes["placeholder"], out min);
                }
                if (!int.TryParse(tbStep.Text, out step))
                {
                    int.TryParse(tbStep.Attributes["placeholder"], out step);
                }

                ibri.BrightnessMax  = max;
                ibri.BrightnessMin  = min;
                ibri.BrightnessStep = step;
                ibri.Brightness     = max;
            }

            SmartHouse.AddDevice(dev);

            Session["showAddDevice"] = null;
            ParentForm.RefreshControls();
        }