public void StateAvailable_ChargingFalse() { var id = Guid.NewGuid(); _charger.IsConnected().Returns(false); _reader.RFChipRead += Raise.EventWith <RFReaderChangedEventArgs>(new RFReaderChangedEventArgs(id)); _uut.RFIDDetected(id); _display.Received().displayMsg("Din telefon er ikke ordentlig tilsluttet. Prøv igen."); }
public void TestFunctionCalledForChargerIsConnectedReturnsTrue(int id) { //Default state of the station is available using var cLogger = new ConsoleOutput(); _charger.IsConnected().Returns(true); _reader.RFIDReadEvent += Raise.EventWith(new RFIDReaderEventArgs() { RFID = id }); _lock.Received(1).LockDoor(); _charger.Received(1).StartCharge(); _logger.Received(1).LogDoorLocked(id); _display.Received(1).DisplayString("Skabet er låst og din telefon lades. Brug dit RFID tag til at låse op."); }
public void RFIDDetected(Guid id) { switch (state) { case LadeskabState.Available: // Check for ladeforbindelse if (_charger.IsConnected()) { Locked(); _charger.StartCharge(); _oldId = id; LogDoorlocked(id); _display.displayMsg("Skabet er låst og din telefon lades. Brug dit RFID tag til at låse op."); state = LadeskabState.Locked; } else { _display.displayMsg("Din telefon er ikke ordentlig tilsluttet. Prøv igen."); } break; case LadeskabState.DoorOpen: _display.displayMsg("Nothing"); break; case LadeskabState.Locked: // Check for correct ID if (CheckId(_oldId, id)) { _charger.StopCharge(); Unlocked(); LogDoorunlocked(id); _display.displayMsg("Tag din telefon ud af skabet og luk døren"); state = LadeskabState.Available; } else { _display.displayMsg("Forkert RFID tag"); } break; } }
// Event handler for the event "RFID Detected" from the state machine diagram for the class private void RfidDetected(object sender, RfidChangedEventArgs e) { switch (_lockState) { case ChargerLockState.Available: _display.ShowConnectPhone(); // Check for charger connection if (_charger.IsConnected()) { _door.LockDoor(); _charger.StartCharge(); _oldId = e.Rfid; _logger.LogDoorLocked(e.Rfid); _display.ShowOccupied(); _lockState = ChargerLockState.Locked; } else { _display.ShowConnectionErr(); } break; case ChargerLockState.DoorOpen: _display.ShowInputRfid(); _lockState = ChargerLockState.Available; break; case ChargerLockState.Locked: // Check for correct ID if (CheckId(e.Rfid)) { _charger.StopCharge(); _door.UnlockDoor(); _logger.LogDoorUnlocked(e.Rfid); _display.ShowRmvPhone(); _lockState = ChargerLockState.Available; } else { _display.ShowRfidErr(); } break; } }
// Eksempel på event handler for eventet "RFID Detected" fra tilstandsdiagrammet for klassen private void RFIDDetected(int id) { switch (_state) { case LadeskabState.Available: // Check for ladeforbindelse if (_charger.IsConnected()) { _lock.LockDoor(); _charger.StartCharge(); _oldId = id; _logger.LogDoorLocked(_oldId); _display.DisplayString("Skabet er låst og din telefon lades. Brug dit RFID tag til at låse op."); _state = LadeskabState.Locked; } else { _display.DisplayString("Din telefon er ikke ordentlig tilsluttet. Prøv igen."); } break; //case LadeskabState.DoorOpen: // Ignore //break; case LadeskabState.Locked: // Check for correct ID if (CheckID(id)) { _charger.StopCharge(); _lock.UnlockDoor(); _logger.LogDoorUnlocked(id); _display.DisplayString("Tag din telefon ud af skabet og luk døren"); _state = LadeskabState.Available; } else { _display.DisplayString("Forkert RFID tag"); } break; } }
public void RfidDetected_StateAvailable_ChargerIsNotConnected() { rfidReader.DetectRfid += Raise.EventWith(this, new RfidChangedEventArgs()); charger.IsConnected().Returns(false); charger.Received(1).IsConnected(); }