(t *testing.T)
| 216 | } |
| 217 | |
| 218 | func TestColumns(t *testing.T) { |
| 219 | f := NewFile() |
| 220 | rows, err := f.Rows("Sheet1") |
| 221 | assert.NoError(t, err) |
| 222 | |
| 223 | rows.decoder = f.xmlNewDecoder(bytes.NewReader([]byte(`<worksheet><sheetData><row r="2"><c r="A1" t="s"><v>1</v></c></row></sheetData></worksheet>`))) |
| 224 | _, err = rows.Columns() |
| 225 | assert.NoError(t, err) |
| 226 | rows.decoder = f.xmlNewDecoder(bytes.NewReader([]byte(`<worksheet><sheetData><row r="2"><c r="A1" t="s"><v>1</v></c></row></sheetData></worksheet>`))) |
| 227 | rows.curRow = 1 |
| 228 | _, err = rows.Columns() |
| 229 | assert.NoError(t, err) |
| 230 | |
| 231 | rows.decoder = f.xmlNewDecoder(bytes.NewReader([]byte(`<worksheet><sheetData><row r="A"><c r="A1" t="s"><v>1</v></c></row><row r="A"><c r="2" t="inlineStr"><is><t>B</t></is></c></row></sheetData></worksheet>`))) |
| 232 | assert.True(t, rows.Next()) |
| 233 | _, err = rows.Columns() |
| 234 | assert.EqualError(t, err, `strconv.Atoi: parsing "A": invalid syntax`) |
| 235 | |
| 236 | rows.decoder = f.xmlNewDecoder(bytes.NewReader([]byte(`<worksheet><sheetData><row r="1"><c r="A1" t="s"><v>1</v></c></row><row r="A"><c r="2" t="inlineStr"><is><t>B</t></is></c></row></sheetData></worksheet>`))) |
| 237 | _, err = rows.Columns() |
| 238 | assert.NoError(t, err) |
| 239 | |
| 240 | rows.decoder = f.xmlNewDecoder(bytes.NewReader([]byte(`<worksheet><sheetData><row r="1"><c r="A" t="s"><v>1</v></c></row></sheetData></worksheet>`))) |
| 241 | assert.True(t, rows.Next()) |
| 242 | _, err = rows.Columns() |
| 243 | assert.Equal(t, newCellNameToCoordinatesError("A", newInvalidCellNameError("A")), err) |
| 244 | |
| 245 | // Test token is nil |
| 246 | rows.decoder = f.xmlNewDecoder(bytes.NewReader(nil)) |
| 247 | _, err = rows.Columns() |
| 248 | assert.NoError(t, err) |
| 249 | } |
| 250 | |
| 251 | func TestSharedStringsReader(t *testing.T) { |
| 252 | f := NewFile() |
nothing calls this directly
no test coverage detected