private IWorkerSlot BuildSlot(SlotTestData slotData, IBuilding parentBuilding, string name)
        {
            var mockSlot = BuildMockSlot(slotData, name);

            mockSlot.Setup(slot => slot.ParentBuilding).Returns(parentBuilding);

            return(mockSlot.Object);
        }
        private IWorkerSlot BuildSlot(SlotTestData slotData)
        {
            var mockSlot = new Mock <IWorkerSlot>();

            mockSlot.Setup(slot => slot.IsOccupied).Returns(slotData.IsOccupied);

            return(mockSlot.Object);
        }
        private Mock <IWorkerSlot> BuildMockSlot(SlotTestData slotData, string name)
        {
            var mockSlot = new Mock <IWorkerSlot>();

            mockSlot.Name = name;

            mockSlot.SetupAllProperties();

            mockSlot.Object.IsOccupied = slotData.IsOccupied;
            mockSlot.Object.IsLocked   = slotData.IsLocked;

            OccupationExpectations[mockSlot.Object] = slotData.ExpectsOccupation;

            return(mockSlot);
        }