public void should_pick_bag_with_ticket()
        {
            //Given
            lockerListForManager = new List<IBagKeeper>();

            lockerListForManager.Add(locker);
            manager = new Manager(lockerListForManager);

            //When
            var ticket = manager.Store(bag);
            Bag bagPicked = manager.Pick(ticket);

            //Then
            Assert.AreSame(bag, bagPicked);
        }
        public void should_manage_robots_and_lockers_to_store_bag()
        {
            //Given
            var bagKeepers = new List<IBagKeeper>();
            locker = new Locker(1);
            IBagKeeper lockerForManager = new Locker(1);
            lockerListForRobot = new List<IBagKeeper>();
            lockerListForRobot.Add(locker);
            robot = new Robot(lockerListForRobot);
            bagKeepers.Add(lockerForManager);
            bagKeepers.Add(robot);
            manager = new Manager(bagKeepers);

            //When
            Ticket ticket = manager.Store(bag);
            Ticket ticket2 = manager.Store(bag2);

            //Then
            Assert.NotNull(ticket);
            Assert.NotNull(ticket2);
            Assert.AreSame(bag, manager.Pick(ticket));
            Assert.AreSame(bag2, manager.Pick(ticket2));
        }