public void should_return_error_message_when_lockers_are_full() { var lockerSize = 10; var robot = new Robot(oneLocker); for (int i = 0; i < lockerSize; i++) { robot.Store(new Bag()); } var anotherBag = new Bag(); var ex = Assert.Throws<ArgumentException>(() => robot.Store(anotherBag)); Assert.That(ex.Message, Is.EqualTo("The lockers are full!")); }
public void should_get_a_ticket_when_robot_fisrt_store_a_bag_in_locker() { var robot = new Robot(lockers); var bag = new Bag(); Ticket ticket = robot.Store(bag); Assert.NotNull(ticket); }
public void should_circle_pick_and_store() { var robot = new Robot(oneLocker); for (int i = 0; i <= oneLocker.Count; i++) { robot.Store(new Bag()); } var firstBag = new Bag(); var secondBag = new Bag(); var firstTicket = robot.Store(firstBag); robot.Pick(firstTicket); var secondTicket = robot.Store(secondBag); Assert.NotNull(secondTicket); }
public void should_pick_bag_which_we_stroed_in() { var robot = new Robot(lockers); var bagStore = new Bag(); Ticket ticket = robot.Store(bagStore); var bagPick = robot.Pick(ticket); Assert.AreSame(bagPick, bagStore); }
public void should_return_error_message_when_robot_without_lockers() { List<IBagKeeper> emptyLockers = new List<IBagKeeper>(); var bag1 = new Bag(); var robot = new Robot(emptyLockers); var ex = Assert.Throws<ArgumentException>(() => robot.Store(bag1)); Assert.That(ex.Message, Is.EqualTo("No locker is available")); }
public void should_store_bag_in_sequence() { var lockersWithOneCapcity = new List<IBagKeeper>(); for (int i = 0; i < LOCKER_COUNT; i++) { lockersWithOneCapcity.Add(new Locker(1)); } var robot = new Robot(lockersWithOneCapcity); lockersWithOneCapcity[0].Store(new Bag()); lockersWithOneCapcity[2].Store(new Bag()); robot.Store(new Bag()); Assert.AreEqual(lockersWithOneCapcity[1].Capacity, 0); Assert.AreEqual(lockersWithOneCapcity[3].Capacity, 1); }
public void should_return_null_when_pick_bag_with_used_ticket() { var robot = new Robot(oneLocker); var firstBag = new Bag(); var ticket = robot.Store(firstBag); robot.Pick(ticket); Assert.Null(robot.Pick(ticket)); }