public void InsertSpreadSheetTest() { var w = 10; var h = 10; var sheet = CreateSpreadSheet(w, h); var insertCommad = _commandParser.PaserCommand("N"); insertCommad.Operate("1 1 10", sheet); insertCommad.Operate("10 1 20", sheet); insertCommad.Operate("10 10 30", sheet); var insertVal1x1y = sheet.GetVal(1, 1); var insertVal10x1y = sheet.GetVal(10, 1); var insertVal10x10y = sheet.GetVal(10, 10); Assert.True("10" == insertVal1x1y && "20" == insertVal10x1y && "30" == insertVal10x10y); Assert.Throws <SpreadSheetException>(() => { insertCommad.Operate("11 1 10", sheet); }); Assert.Throws <SpreadSheetException>(() => { insertCommad.Operate("2 1 1234", sheet); }); Assert.Throws <SpreadSheetException>(() => { insertCommad.Operate("2 1 1 2", sheet); }); }
private static void HandleInputCommand(string inputLine) { var handleInput = PreHanleInputLine(inputLine); var command = commandParser.PaserCommand(handleInput.Item1); if (command is CreateCommand) { globalSpreadSheet = command.Operate(handleInput.Item2); globalSpreadSheet.Out(); } else { var handleSpreadSheet = command.Operate(handleInput.Item2, globalSpreadSheet); handleSpreadSheet.Out(); } }