static void Main(string[] args) { var remote = new SimpleRemoteControl(); var light = new Light(); var lightOn = new LightOnCommand(light); var lightOff = new LightOffCommand(light); var garageDoor = new GarageDoor(); var garageDoorOpen = new GarageDoorOpenCommand(garageDoor); var garageDoorClose = new GarageDoorCloseCommand(garageDoor); var stereo = new Stereo(); var stereoOnWithCD = new StereoOnWithCdCommand(stereo); var stereoOn = new StereoOnCommand(stereo); var stereoOff = new StereoOffCommand(stereo); remote.SetCommand(lightOn); remote.ButtonWasPressed(); remote.SetCommand(garageDoorOpen); remote.ButtonWasPressed(); Console.WriteLine("\n-----Newer Universal Remote-----\n"); var universalRemote = new RemoteControl(); universalRemote.AddCommand("Light", lightOn, lightOff); universalRemote.AddCommand("GarageDoor", garageDoorOpen, garageDoorClose); universalRemote.AddCommand("Stereo", stereoOn, stereoOff); universalRemote.AddCommand("StereoWithCD", stereoOnWithCD, stereoOff); Console.WriteLine(universalRemote.ToString()); Input(universalRemote); }
public void should_turn_on_light_when_press_first_on_button() { var light = new Light(); var remoteControl = new RemoteControl(light, null, null); remoteControl.On(1); Assert.True(light.Status); }
static void Main(string[] args) { Light light = new Light(); Command lightBtn = new LightONCommand(light); SimpleRemoteControl simpRemoteCntrl = new SimpleRemoteControl(); simpRemoteCntrl.SetCommand(lightBtn); simpRemoteCntrl.ButtonWasPressed(); }
static void Main(string[] args) { var remote = new SimpleRemoteControl(); var light = new Light(); var lightOnCommand = new LightOnCommand(light); remote.SetCommand(lightOnCommand); remote.ButtonWasPressed(); }
public LightOnCommand(Light light) { this.light = light; }
static void Main(string[] args) { Light light = new Light("Any"); Light kitchenLight = new Light("Kitchen"); Light livingRoomLight = new Light("Living room"); Light bedroomLight = new Light("Bedroom"); Command lightONBtn = new LightONCommand(light); Command lightOffBtn = new LightOFFCommand(light); Command kitchenLightON = new LightONCommand(kitchenLight); Command kitchenLightOFF = new LightOFFCommand(kitchenLight); Command livingRoomON = new LightONCommand(livingRoomLight); Command livingRoomOFF = new LightOFFCommand(livingRoomLight); SimpleRemoteControl simpRemoteCntrl = new SimpleRemoteControl(); simpRemoteCntrl.SetCommand(0,lightONBtn,lightOffBtn); simpRemoteCntrl.SetCommand(1, kitchenLightON, kitchenLightOFF); simpRemoteCntrl.SetCommand(2, livingRoomON, livingRoomOFF); simpRemoteCntrl.OnButtonPushed(0); simpRemoteCntrl.OffButtonPushed(0); simpRemoteCntrl.OnButtonPushed(1); simpRemoteCntrl.OffButtonPushed(1); simpRemoteCntrl.OnButtonPushed(2); simpRemoteCntrl.OffButtonPushed(2); CeilingFan ceilingFanLivingRoom = new CeilingFan("Living Room"); Command ceilingFanHighCommand = new CeilingFanHighCommand(ceilingFanLivingRoom); Command ceilingFanOffCommand = new CeilingFanOffCommand(ceilingFanLivingRoom); simpRemoteCntrl.SetCommand(3, ceilingFanHighCommand, ceilingFanOffCommand); simpRemoteCntrl.OnButtonPushed(3); Console.WriteLine("\n Start of macro \n"); Command[] partyCommandsOn = new Command[] { lightONBtn,kitchenLightON,livingRoomON}; Command[] partyCommandsOff = new Command[] {lightOffBtn,kitchenLightOFF,livingRoomOFF }; MacroCommand macroCommandON = new MacroCommand(partyCommandsOn); MacroCommand macroCommandOff = new MacroCommand(partyCommandsOff); simpRemoteCntrl.SetCommand(0, macroCommandON, macroCommandOff); simpRemoteCntrl.OnButtonPushed(); simpRemoteCntrl.OffButtonPushed(); Console.WriteLine(simpRemoteCntrl.ToString()); }
public LightOffCmd(Light light) { _light = light; }
public LightOffCommand(Light light) { this.light = light; }
static void Main(string[] args) { //SimpleRemoteControl remote = new SimpleRemoteControl(); //Light light = new Light(); //GarageDoor garageDoor = new GarageDoor(); //LightOnCommand lightOn = new LightOnCommand(light); //GarageDoorOpenCommand garageOpen = new GarageDoorOpenCommand(garageDoor); //remote.setCommand(lightOn); //remote.buttonWasPressed(); //remote.setCommand(garageOpen); //remote.buttonWasPressed(); RemoteControl remoteControl = new RemoteControl(); Light livingRoomLight = new Light("Living Room"); Light kitchenLight = new Light("Kitchen"); GarageDoor garageDoor = new GarageDoor(); Stereo stereo = new Stereo("Living Room"); CeilingFan ceilingFan = new CeilingFan("Living Room"); LightOnCommand livingRoomLightOn = new LightOnCommand(livingRoomLight); LightOffCommand livingRoomLightOff = new LightOffCommand(livingRoomLight); LightOnCommand kitchenLightOn = new LightOnCommand(kitchenLight); LightOffCommand kitchenLightOff = new LightOffCommand(kitchenLight); GarageDoorOpenCommand garageOpen = new GarageDoorOpenCommand(garageDoor); GarageDoorCloseCommand garageClose = new GarageDoorCloseCommand(garageDoor); StereoOnWithCDCommand stereoOnWithCD = new StereoOnWithCDCommand(stereo); StereoOffWithCDCommand stereoOffWithCD = new StereoOffWithCDCommand(stereo); CeilingFanHighCommand ceilingFanHigh = new CeilingFanHighCommand(ceilingFan); CeilingFanMediumCommand ceilingFanMedium = new CeilingFanMediumCommand(ceilingFan); CeilingFanLowCommand ceilingFanLow = new CeilingFanLowCommand(ceilingFan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); remoteControl.setCommand(0, livingRoomLightOn, livingRoomLightOff); remoteControl.setCommand(1, kitchenLightOn, kitchenLightOff); remoteControl.setCommand(2, garageOpen, garageClose); remoteControl.setCommand(3, stereoOnWithCD, stereoOffWithCD); remoteControl.setCommand(4, ceilingFanHigh, ceilingFanOff); remoteControl.setCommand(5, ceilingFanMedium, ceilingFanOff); remoteControl.setCommand(6, ceilingFanLow, ceilingFanOff); Console.WriteLine(remoteControl.toString()); remoteControl.onButtonWasPushed(0); remoteControl.offButtonWasPushed(0); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(1); remoteControl.offButtonWasPushed(1); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(2); remoteControl.offButtonWasPushed(2); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(3); remoteControl.offButtonWasPushed(3); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(5); remoteControl.offButtonWasPushed(5); Console.WriteLine(remoteControl); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(4); Console.WriteLine(remoteControl); remoteControl.undoButtonWasPushed(); #region marco command Command[] partyOn = { kitchenLightOn, livingRoomLightOn, garageOpen, stereoOnWithCD }; Command[] partyOff = { kitchenLightOff, livingRoomLightOff, garageClose, stereoOffWithCD }; MacroCommand partyOnCommand = new MacroCommand(partyOn); MacroCommand partyOffCommand = new MacroCommand(partyOff); remoteControl.setCommand(6, partyOnCommand, partyOffCommand); remoteControl.onButtonWasPushed(6); remoteControl.offButtonWasPushed(6); remoteControl.undoButtonWasPushed(); #endregion Console.ReadLine(); }