public void InitValueTests() { var box = new BoxList <string>(); this.InitValue(box, 2, 3); box.Width.Is(2); box.Height.Is(3); for (var r = 0; r < box.Height; r++) { for (var c = 0; c < box.Width; c++) { box[c, r].Is($"{c},{r}"); } } }
public void ConstructionTest2() { // インスタンス生成時の、例外テスト { var obj = new BoxList <int>(0, 0); obj.MaxRows.Is(0); obj.MaxCols.Is(0); } AssertEx.Throws <ArgumentOutOfRangeException>(() => { var obj = new BoxList <int>(3, 0); }) .ParamName.Is("newCols"); AssertEx.Throws <ArgumentOutOfRangeException>(() => { var obj = new BoxList <int>(0, 3); }) .ParamName.Is("newRows"); }
public void ConstructionTest() { TestContext.Run((int maxrow, int maxcol) => { var box = new BoxList <int>(maxrow, maxcol); box.MaxRows.Is(maxrow); box.MaxCols.Is(maxcol); // 全要素にアクセスする確認 for (var row = 0; row < maxrow; row++) { for (var col = 0; col < maxcol; col++) { // データを代入して、3通りの方法で読み出してみる var data = row * 0x1000 + col; box[row, col] = data; box[row, col].Is(data, "[,]"); box.Rows(col).ToList()[row].Is(data, "Rows"); box.Cols(row).ToList()[col].Is(data, "Cols"); } } }); }
public void ResizeTest() { var obj = new BoxList <int>(); obj.MaxRows.Is(0); // 作成直後は、サイズが0 obj.MaxCols.Is(0); obj.MaxRows = 3; // 行を増やした時、 obj.MaxRows.Is(3); obj.MaxCols.Is(1); // 列が0だと、1に増やす obj.MaxRows = 0; // 行を0にすると、 obj.MaxRows.Is(0); // 中身がからになる obj.MaxCols.Is(0); obj.MaxCols = 3; // 列も同様 obj.MaxRows.Is(1); obj.MaxCols.Is(3); obj.MaxCols = 0; obj.MaxRows.Is(0); obj.MaxCols.Is(0); }