protected override IGraphicComponent CreateComponent() { var modelMock = new Mock<ITableModel<Object>>(); var selectionModelMock = new Mock<ITableSelectionModel>(); var renderer = new TableRendererMock<Object>(); var table = new TableView<Object>(modelMock.Object, renderer, selectionModelMock.Object); table.Setup(); return table; }
public void DrawCalledTwice_SelectionChangedRaised_RenderedComponentHasRightSelection() { var modelStub = new Mock<ITableModel<Object>>(); var tableRendererMock = new TableRendererMock<Object>(); var selectionModelStub = new Mock<ITableSelectionModel>(); SetDimension(modelStub, 10, 20); var table = CreateTable(modelStub, tableRendererMock, selectionModelStub); int row = 4; int column = 5; var eventArgs = new SelectionChangedEventArgs(row, column, true); table.Setup(); table.Draw(new SpriteBatchMock()); selectionModelStub.Setup(o => o.IsSelected(row, column)).Returns(true); selectionModelStub.Raise(o => o.SelectionChanged += null, selectionModelStub.Object, eventArgs); table.Draw(new SpriteBatchMock()); var changedComponent = tableRendererMock.components[row, column]; Assert.True(changedComponent.IsSelected); }
private TableView<Object> CreateTable(Mock<ITableModel<Object>> modelMock, TableRendererMock<Object> renderer, Mock<ITableSelectionModel> selectionModelMock, ITableGrid grid = null) { if (grid == null) grid = new TableGrid(); var table = new TableView<Object>(modelMock.Object, renderer, selectionModelMock.Object, grid); table.SetCoordinates(0, 0, 500, 500); return table; }
public void DrawCalledTwice_ModelDataChangedRaised_RenderedComponentHasNewData() { var modelStub = new Mock<ITableModel<Object>>(); var tableRendererMock = new TableRendererMock<Object>(); SetDimension(modelStub, 10, 20); var table = CreateTable(modelStub, tableRendererMock, new Mock<ITableSelectionModel>()); var newData = new Object(); int row = 4; int column = 5; var eventArgs = new DataChangedEventArgs<Object>(row, column, newData); table.Setup(); table.Draw(); modelStub.Setup(o => o.DataAt(row, column)).Returns(newData); modelStub.Raise(o => o.DataChanged += null, modelStub.Object, eventArgs); table.Draw(); var changedComponent = tableRendererMock.components[row, column]; Assert.AreEqual(newData, changedComponent.Data); }