static void Main(string[] args) { string[] inputs = Console.ReadLine().Split(' '); int height = int.Parse(inputs[0]); int width = int.Parse(inputs[1]); List <List <ISlot> > map = new List <List <ISlot> >(); int x = 0, y = 0; SlotFactory factory = new SlotFactory(); for (int o = 0; o < height; o++) { string row = Console.ReadLine(); int idx = row.IndexOf("@"); if (idx >= 0) { x = idx; y = o; } map.Add(row.ToCharArray().Select((c, a) => factory.GetSlot(c, a, o)).ToList()); } Bender bender = new Bender(map, x, y); bender.GoToHell(); }
public AnswerSlotLayoutCreator(float tileWidth, int tilesPerRow, float startHeight, SlotFactory slotFactory) { _tileWidth = tileWidth; _tilesPerRow = tilesPerRow; _startHeight = startHeight; _slotFactory = slotFactory; }
public void GetSlotShouldReturnNetworkingEventTypeWithProperDetails() { var slot = SlotFactory.GetSlot("Networking Session", defaultTitle, startTime, duration, duration); var networkingEvent = slot as NetworkingEvent; Assert.Equal(defaultTitle, slot.Title); Assert.Equal(duration, networkingEvent.DefaultStartTime); }
public void GetSlotShouldReturnLunchBreakWithProperDetails() { var slot = SlotFactory.GetSlot("Lunch Break", defaultTitle, startTime, duration, duration); Assert.Equal(defaultTitle, slot.Title); Assert.Equal(startTime, slot.StartTime); Assert.Equal(duration, slot.Duration); }
public void GetSlotShouldReturnSessionWithProperDetails() { var slot = SlotFactory.GetSlot(defaultCategory, defaultTitle, startTime, duration, duration); Assert.Equal(defaultTitle, slot.Title); Assert.Equal(startTime, slot.StartTime); Assert.Equal(duration, slot.Duration); }
public void CreateSlot_Should_Not_Be_Null() { var symbolFactory = new Mock <ISymbolFactory>().Object; var slotFactory = new SlotFactory(symbolFactory); var result = slotFactory.CreateSlot(); Assert.NotNull(result); }
public void CreateSloty_Should_Return_Object_Of_Type_Slot() { var symbolFactory = new Mock <ISymbolFactory>().Object; var slotFactory = new SlotFactory(symbolFactory); var result = slotFactory.CreateSlot(); Assert.IsType <Slot>(result); }
public void CreateSlot_Should_Be_AssignableFrom_ISlot_Interface() { var symbolFactory = new Mock <ISymbolFactory>().Object; var slotFactory = new SlotFactory(symbolFactory); var result = slotFactory.CreateSlot(); Assert.IsAssignableFrom <ISlot>(result); }
void Awake() { _nameInputManager = new NameInputManager(answer); _nameInputManager.ListenTo(_answerSlotPool); _slotFactory = new SlotFactory(tilePrefab, slotPrefab, _slotPool, _answerSlotPool); _answerSlotLayoutCreator = new AnswerSlotLayoutCreator(tileWidth, tilesPerRow, slotsY, _slotFactory); _tileLayoutCreator = new TileLayoutCreator(tileWidth, tilesPerRow, tilesY, _slotFactory); _answerSlotLayoutCreator.CreateAnswerSlotLayout(answer.Length); _tileLayoutCreator.CreateTileLayout(tiles); }
void Awake() { if(TransitionData.CurrentLevel.answer != null) { answer = TransitionData.CurrentLevel.answer; image.texture = Resources.Load(TransitionData.CurrentLevel.image) as Texture; } _answerManager = new AnswerManager(answer, OnWon); _answerManager.ListenTo(_answerSlotPool); _slotFactory = new SlotFactory(tilePrefab, slotPrefab, _slotPool, _answerSlotPool); _tileLayoutCreator = new TileLayoutCreator(tileWidth, tilesPerRow, tilesY, _slotFactory); _answerSlotLayoutCreator = new AnswerSlotLayoutCreator(tileWidth, tilesPerRow, slotsY, _slotFactory); _tileLayoutCreator.CreateTileLayout(GenerateTileLettersFromAnswer()); _answerSlotLayoutCreator.CreateAnswerSlotLayout(answer.Length); }
public void GetSlotShouldReturnNetworkingEventTypeForNetworkingSessionCategory() { var slot = SlotFactory.GetSlot("Networking Session", defaultTitle, startTime, duration, duration); Assert.IsType <NetworkingEvent>(slot); }
public void GetSlotShouldReturnLunchBreakTypeForLunchBreakCategory() { var slot = SlotFactory.GetSlot("Lunch Break", defaultTitle, startTime, duration, duration); Assert.IsType <LunchBreak>(slot); }
public void GetSlotShouldReturnSessionTypeForSessionCategory() { var session = SlotFactory.GetSlot(defaultCategory, defaultTitle, startTime, duration, duration); Assert.IsType <Session>(session); }
public void GetSlotShouldThrowArgumentNullExceptionIfTitleIsNull() { Assert.Throws <ArgumentException>(() => SlotFactory.GetSlot(defaultCategory, null, startTime, duration, duration)); }
public void GetSlotShouldThrowArgumentExceptionIfCategoryIsInvalid() { Assert.Throws <ArgumentException>(() => SlotFactory.GetSlot("Invalid Category", defaultTitle, startTime, duration, duration)); }