/// <summary> /// The main program /// </summary> /// <param name="args"> /// The args. /// </param> private static void Main(string[] args) { Console.Title = Title; CommandLine.WriteLineColor(ConsoleColor.Yellow, Title); Trace.Listeners.Add(new ConsoleTraceListener()); var door = new SecurityDoor(); var done = false; while (!done) { CommandLine.WriteLineColor(ConsoleColor.Magenta, "\r\nThe door is now {0}", door.State); switch (DisplayMenu()) { case 'a': door.InsertKey(Guid.NewGuid()); break; case 'u': door.InsertKey(Guid.Empty); break; case 'x': done = true; break; } } CommandLine.Pause("Sample complete. Press any key to exit"); }
public void ValidKeyShouldAuthorize() { // Arrange var securityDoor = new SecurityDoor { Timeout = this.timeout }; var tracking = new MemoryTrackingParticipant(); try { // Act // Insert a valid key securityDoor.InsertKey(Guid.NewGuid()); // Assert Assert.AreEqual(DoorState.ClosedUnlocked, securityDoor.State); } finally { tracking.Trace(); securityDoor.Trace(); } }