diff --git a/t/fixtures/big_sample.txt b/t/fixtures/big_sample.txt new file mode 100644 index 0000000..5e9cf5b --- /dev/null +++ b/t/fixtures/big_sample.txt @@ -0,0 +1,7 @@ +|---+---+---+---| +| 1 | 9 | a | z | +| 2 | 8 | b | y | +| 3 | 7 | c | x | +| 4 | 6 | d | w | +| 5 | 5 | e | v | +|---+---+---+---| diff --git a/t/spreadsheet.vim b/t/spreadsheet.vim index 093475c..f83194f 100644 --- a/t/spreadsheet.vim +++ b/t/spreadsheet.vim @@ -102,4 +102,25 @@ describe 'spreadsheet' Expect tablemode#spreadsheet#ColumnCount('.') == 1 end end + + describe 'Repeated Manipulations' + before + new + normal! ggdG + read t/fixtures/big_sample.txt + call cursor(2, 3) + end + + it 'should delete multiple rows correctly' + Expect tablemode#spreadsheet#RowCount('.') == 5 + .,.+1 call tablemode#spreadsheet#DeleteRow() + Expect tablemode#spreadsheet#RowCount('.') == 3 + end + + it 'should delete multiple columns correctly' + Expect tablemode#spreadsheet#ColumnCount('.') == 4 + .,.+1 call tablemode#spreadsheet#DeleteColumn() + Expect tablemode#spreadsheet#ColumnCount('.') == 2 + end + end end