public SimCorpMobile(IPlayback headset, ICharger charger, IOutput output) { var type = BatteryBase.BatteryTypes.LithiumIonBattery; int capacityMAh = 2200; vBattery = new BatteryBase(type, capacityMAh); string number = "+380959992299"; var format = SimcardBase.SimFormats.Nano; vSimcard = new SimcardBase(number, format); vCamera = new Camera { MegaPixels = 2000, IndivPixelSize = 1000, LensType = Camera.LensTypes.Dual, ZoomType = Camera.ZoomTypes.Optical }; vScreen = new ScreenBase { HorizontalPixels = 640, VerticalPixels = 960, Diagonal = 3.5, ScreenType = ScreenBase.ScreenTypes.LCD }; vOutput = output; vHeadSet = headset; vCharger = charger; }
public void ConfigureMobile() { Console.WriteLine("Select playback component (specify index):"); Console.WriteLine($"1 - {nameof(iPhoneHeadset)}"); Console.WriteLine($"2 - {nameof(SamsungHeadset)}"); Console.WriteLine($"3 - {nameof(UnoffocoaliPhoneHeadset)}"); Console.WriteLine($"4 - {nameof(PhoneSpeaker)}"); int type = Convert.ToInt32(Console.ReadLine()); PlaybackComponent = HeadsetFactory.GetPlayback(type); PlaybackComponent.Play(new object()); Console.WriteLine("Select SimCard (specify index):"); Console.WriteLine($"1 - {nameof(NanoSim)}"); Console.WriteLine($"2 - {nameof(MicroSim)}"); Console.WriteLine($"3 - {nameof(MiniSim)}"); Console.WriteLine($"4 - {nameof(Sim)}"); type = Convert.ToInt32(Console.ReadLine()); SimCardItem = SimCardFactory.GetSimCard(type); SimCardItem.Call(new object()); Console.WriteLine("Select charger (specify index):"); Console.WriteLine($"1 - {nameof(SamsungCharger)}"); Console.WriteLine($"2 - {nameof(SonyCharger)}"); Console.WriteLine($"3 - {nameof(NokiaCharger)}"); Console.WriteLine($"4 - {nameof(MotoCharger)}"); type = Convert.ToInt32(Console.ReadLine()); ChargerComponenet = ChargerFactory.GetCharger(type); ChargerComponenet.Charge(new object()); Console.ReadKey(); }
public static ICharger GetCharger(int chargerType) { ICharger charger = null; switch (chargerType) { case 1: charger = new SamsungCharger(new ConsoleOutput()); break; case 2: charger = new SonyCharger(new ConsoleOutput()); break; case 3: charger = new NokiaCharger(new ConsoleOutput()); break; case 4: charger = new MotoCharger(new ConsoleOutput()); break; default: throw new ArgumentException("Invalis SimCard type"); } return(charger); }
public ICharger GetCharger(ChargerComponentTypes chargerType) { ICharger chargerComponent = null; switch (chargerType) { case ChargerComponentTypes.OwnCharger: chargerComponent = new OwnCharger(Output); Output.WriteLine($"{nameof(OwnCharger)} selected"); break; case ChargerComponentTypes.NokiaCharger: chargerComponent = new NokiaCharger(Output); Output.WriteLine($"{nameof(NokiaCharger)} selected"); break; case ChargerComponentTypes.HuaweiPowerBank: chargerComponent = new HuaweiPowerBank(Output); Output.WriteLine($"{nameof(HuaweiPowerBank)} selected"); break; case ChargerComponentTypes.NomiPowerBank: chargerComponent = new NomiPowerBank(Output); Output.WriteLine($"{nameof(NomiPowerBank)} selected"); break; case ChargerComponentTypes.QQEERSolarPowerBank: chargerComponent = new QQEERSolarPowerBank(Output); Output.WriteLine($"{nameof(QQEERSolarPowerBank)} selected"); break; } return(chargerComponent); }
private void RadioButton_CheckedChanged(object sender, EventArgs e) { Type typeOfCharger = (Type)((Control)sender).Tag; Charger = (ICharger)Activator.CreateInstance(typeOfCharger, Output); //ChargeTextBox.Text = $"{typeOfCharger.Name} selected"; }
public void CalculateChargingTimePowerBZeroCap() { ICharger crg = ChargerFactory.GetCharger(ChargerTypes.Powerbk); double actRes = crg.CalculateChargingTime(0); double expRes = 0; Assert.AreEqual(expRes, actRes); }
private void SetCharger(ICharger charger) { Output.WriteLine($"{charger.GetType().Name} charger selected"); Output.WriteLine("Set charger to mobile..."); Mobile.ChargingComponent = charger; Output.WriteLine("Charging mobile:"); Mobile.Charge(); Output.WriteLine(""); }
public BillingSystem( ICustomerRepository customerRepository, ISubscriptionRepository subscriptionRepository, ICharger charger) { this.customerRepository = customerRepository; this.subscriptionRepository = subscriptionRepository; this.charger = charger; }
public void Setup() { charger = Substitute.For <ICharger>(); display = Substitute.For <IDisplay>(); door = Substitute.For <IDoor>(); logger = Substitute.For <ILogger>(); rfidReader = Substitute.For <IRFIDReader>(); uut = new Control(door, rfidReader, charger, logger, display); }
public void SetUp() { _door = Substitute.For <IDoor>(); _charger = Substitute.For <ICharger>(); _logger = Substitute.For <ILogger>(); _reader = Substitute.For <IRFIDReader>(); _display = Substitute.For <IDisplay>(); _uut = new Control(_door, _charger, _logger, _reader, _display); }
public static ICharger GetCharger(ChargerTypik chargerType, IOutput output) { string typeName = chargerType.ToString(); typeName = "MobilePhone." + typeName; Type hType = Type.GetType(typeName); object ChargerComponent = Activator.CreateInstance(hType, output); ICharger charger = ChargerComponent as ICharger; return(charger); }
public void SetUp() { _lock = Substitute.For <ILock>(); _logger = Substitute.For <IEventLogger>(); _reader = Substitute.For <IRFIDReader>(); _charger = Substitute.For <ICharger>(); _display = Substitute.For <IDisplay>(); _door = Substitute.For <IDoor>(); _station = new StationControl(_lock, _logger, _reader, _charger, _display, _door); }
// Her mangler constructor public StationControl(ILock doorLock, IEventLogger logger, IRFIDReader reader, ICharger charger, IDisplay display, IDoor door) { _lock = doorLock; _logger = logger; _charger = charger; _reader = reader; _display = display; _door = door; _reader.RFIDReadEvent += OnRFIDReadEvent; _door.DoorChangedEvent += OnDoorChangedEvent; _state = _lock.LockState == ELockState.LockOpen ? LadeskabState.Available : LadeskabState.Locked; }
private void buttonChargerUnplug_Click(object sender, System.EventArgs e) { ICharger unpluggedCharger = mobile.Charger; mobile.Charge(null); if (unpluggedCharger != null) { output.WriteLine($"{unpluggedCharger.GetType().Name} unplugged."); } UpdateOutputEnabled(); }
public Control(IDoor door, ICharger charger, ILogger logger, IRFIDReader reader, IDisplay display) { door.DoorOpenedEvent += HandleDoorOpenedEvent; door.DoorClosedEvent += HandleDoorClosedEvent; reader.RFChipRead += Reader_RFChipRead; _door = door; _charger = charger; _logger = logger; _reader = reader; _display = display; }
public void ChargeControl_StartCharge_ConnectedIsFalse_startChargeIsCalled() { //Arrange _charger = Substitute.For <ICharger>(); _display = Substitute.For <IDisplay>(); _uut = new ChargeControl(_charger, _display); _charger.Connected = false; //Act _uut.StartCharge(); //Assert _display.Received().ConnectPhone(); }
public void ChargeControl_StopCharge_ConnectedIsTrue_stopChargeIsCalled() { //Arrange _charger = Substitute.For <ICharger>(); _display = Substitute.For <IDisplay>(); _uut = new ChargeControl(_charger, _display); _charger.Connected = true; //Act _uut.StopCharge(); //Assert _charger.Received().StopCharge(); }
public Control(IDoor door, IRFIDReader rfidReader, ICharger charger, ILogger logger, IDisplay display) { _door = door; _charger = charger; _logger = logger; _display = display; _lockState = ChargerLockState.Available; _door.Opened += new EventHandler(DoorOpened); _door.Closed += new EventHandler(DoorClosed); rfidReader.DetectRfid += new EventHandler <RfidChangedEventArgs>(RfidDetected); }
public void ChargeControl_IsConnected_ReturnBoolIsConnected(bool charger_Connected, bool result) { //Arrange _charger = Substitute.For <ICharger>(); _display = Substitute.For <IDisplay>(); _uut = new ChargeControl(_charger, _display); //Act _charger.Connected = charger_Connected; //Assert Assert.That(_uut.IsConnected, Is.EqualTo(result)); }
public static ICharger GetCharger(ChargerTypes chargerType) { ICharger charger = null; switch (chargerType) { case ChargerTypes.Car: { charger = new CarCharger(); break; } case ChargerTypes.Powerbk: { charger = new Powerbank(); break; } case ChargerTypes.Wall: { charger = new WallCharger(); break; } } return(charger); }
private void SetChargerType() { if (this.rbChargerCar.Checked) { vCharger = ChargerFactory.GetCharger(ChargerTypes.Car); } else if (this.rbChargerPowerbank.Checked) { vCharger = ChargerFactory.GetCharger(ChargerTypes.Powerbk); } else if (this.rbChargerWall.Checked) { vCharger = ChargerFactory.GetCharger(ChargerTypes.Wall); } }
static void Main(string[] args) { ConsoleOutput outputType = new ConsoleOutput(); HeadsetTypes inputHSType = ReadHeadSet(outputType); ChargerTypes inputChrgType = ReadCharger(outputType); IPlayback headset = HeadsetFactory.GetHeadSet(outputType, inputHSType); ICharger charger = ChargerFactory.GetCharger(inputChrgType); var mymobile = new SimCorpMobile(headset, charger, outputType); Console.WriteLine(mymobile); Console.ReadKey(); }
private static Mobile InstantiateSimCorpMobile(IOutput myOutputType) { Mobile mobile = null; ICharger Charger = ChargerFactory.GetCharger(ChargerTypes.Powerbk); IPlayback Headset = HeadsetFactory.GetHeadSet(myOutputType, HeadsetTypes.iPhone); if (Charger != null) { if (Headset != null) { mobile = new SimCorpMobile(Headset, Charger, myOutputType); } } return(mobile); }
private static ICharger GetChargingDevice() { Console.WriteLine("Select playback component (specify index):"); ICharger[] allChargingDevices = new ICharger[] { new OriginalCharger(new ConsoleOutput()), new PowerBank(new ConsoleOutput()), new UnknownCharger(new ConsoleOutput()) }; for (int i = 0; i < allChargingDevices.Length; i++) { Console.WriteLine($" {i + 1} - {allChargingDevices[i]}"); } int index = ReadIndex(allChargingDevices.Length); return(allChargingDevices[index - 1]); }
public void GetAndProcessUserSelectionOfCharger(SimCorpMobile simCorpMobile) { ChargerHandler chargerHandler = new ChargerHandler(Output); string enteredChargerTypeIndex = Input.ReadLine(); try { ChargerComponentTypes chargerType = chargerHandler.GetChargerType(enteredChargerTypeIndex); ICharger chargerComponent = chargerHandler.GetCharger(chargerType); chargerHandler.SetAndRunCharger(simCorpMobile, chargerComponent); } catch (Exception e) { Output.Write(e.Message); } }
public void ChargeControl_Charging_CurrentIsBetween0And5_DisplayRecievesFullyCharged(double current) { //Arrange _charger = Substitute.For <ICharger>(); _display = Substitute.For <IDisplay>(); _uut = new ChargeControl(_charger, _display); _charger.Connected = true; //Act _charger.CurrentValueEvent += Raise.EventWith(new CurrentEventArgs { Current = current }); _charger.CurrentValueEvent += _uut.Charging; //Assert _display.Received(1).FullyCharged(); }
static void Main(string[] args) { SimcorpMobile Phone = new SimcorpMobile(); Console.WriteLine(Phone); IPlayback playbackComponent = GetPlaybackComponent(); Console.WriteLine($" {playbackComponent} selected"); Console.WriteLine(" Set playback to Mobile ..."); Console.WriteLine(" Play sound in Mobile:"); playbackComponent.Play(new object()); ICharger chargingDevice = GetChargingDevice(); chargingDevice.Charge(Phone.Battery); Console.ReadKey(); }
public void ChargeControl_Charging_CurrentIs0_DisplayRecievesNothing() { //Arrange _charger = Substitute.For <ICharger>(); _display = Substitute.For <IDisplay>(); _uut = new ChargeControl(_charger, _display); _charger.Connected = true; //Act _charger.CurrentValueEvent += Raise.EventWith(new CurrentEventArgs { Current = 0 }); _charger.CurrentValueEvent += _uut.Charging; //Assert _display.Received(0).FullyCharged(); _display.Received(0).ChargingFail(); }
public static void Main(string[] args) { var mobile = new ModernMobile(output); while (true) { Console.WriteLine("\n============================"); Console.WriteLine("Select device: (Esc to exit)"); Console.WriteLine($"{DEVICE_HEADPHONES} - Headphones"); Console.WriteLine($"{DEVICE_CHARGER} - Charger"); ConsoleKeyInfo userInput = ReadKeyRestricted(); Console.WriteLine(); if (userInput.Key == ConsoleKey.Escape) { if (!ConfirmationPopup("You are going to exit.")) { continue; } return; } switch (userInput.KeyChar) { case DEVICE_HEADPHONES: AbstractCreator <IPlayback> playbackCreator = playbackCreators[ChooseCreator("Choose playback:", playbackCreators)]; mobile.PlaybackComponent = playbackCreator.Creator.Invoke(); mobile.Play(new object()); break; case DEVICE_CHARGER: AbstractCreator <ICharger> chargerCreator = chargerCreators[ChooseCreator("Choose charger:", chargerCreators)]; ICharger charger = chargerCreator.Creator.Invoke(); charger?.Charge(mobile); break; default: Console.WriteLine("Unexpected input. Please try again."); continue; } } }
public static ICharger GetCharge(Charges charges, IOutput output) { ICharger charger = null; switch (charges) { case Charges.FastCharge: charger = new FastCharge(output); break; case Charges.UsualCharge: charger = new UsualCharge(output); break; default: throw new ArgumentOutOfRangeException(); } return(charger); }