compatibility_test.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package xlsx
  2. import . "gopkg.in/check.v1"
  3. type GoogleDocsExcelSuite struct{}
  4. var _ = Suite(&GoogleDocsExcelSuite{})
  5. // Test that we can successfully read an XLSX file generated by
  6. // Google Docs.
  7. func (g *GoogleDocsExcelSuite) TestGoogleDocsExcel(c *C) {
  8. xlsxFile, err := OpenFile("./testdocs/googleDocsTest.xlsx")
  9. c.Assert(err, IsNil)
  10. c.Assert(xlsxFile, NotNil)
  11. }
  12. type MacExcelSuite struct{}
  13. var _ = Suite(&MacExcelSuite{})
  14. // Test that we can successfully read an XLSX file generated by
  15. // Microsoft Excel for Mac. In particular this requires that we
  16. // respect the contents of workbook.xml.rels, which maps the sheet IDs
  17. // to their internal file names.
  18. func (m *MacExcelSuite) TestMacExcel(c *C) {
  19. xlsxFile, err := OpenFile("./testdocs/macExcelTest.xlsx")
  20. c.Assert(err, IsNil)
  21. c.Assert(xlsxFile, NotNil)
  22. s := xlsxFile.Sheet["普通技能"].Cell(0, 0).String()
  23. c.Assert(s, Equals, "编号")
  24. }
  25. type MacNumbersSuite struct{}
  26. var _ = Suite(&MacNumbersSuite{})
  27. // Test that we can successfully read an XLSX file generated by
  28. // Numbers for Mac.
  29. func (m *MacNumbersSuite) TestMacNumbers(c *C) {
  30. xlsxFile, err := OpenFile("./testdocs/macNumbersTest.xlsx")
  31. c.Assert(err, IsNil)
  32. c.Assert(xlsxFile, NotNil)
  33. sheet, ok := xlsxFile.Sheet["主动技能"]
  34. c.Assert(ok, Equals, true)
  35. s := sheet.Cell(0, 0).String()
  36. c.Assert(s, Equals, "编号")
  37. }
  38. type WpsBlankLineSuite struct{}
  39. var _ = Suite(&WorksheetSuite{})
  40. // Test that we can successfully read an XLSX file generated by
  41. // Wps on windows. you can download it freely from http://www.wps.cn/
  42. func (w *WpsBlankLineSuite) TestWpsBlankLine(c *C) {
  43. xlsxFile, err := OpenFile("./testdocs/wpsBlankLineTest.xlsx")
  44. c.Assert(err, IsNil)
  45. c.Assert(xlsxFile, NotNil)
  46. sheet := xlsxFile.Sheet["Sheet1"]
  47. row := sheet.Rows[0]
  48. cell := row.Cells[0]
  49. s := cell.String()
  50. expected := "编号"
  51. c.Assert(s, Equals, expected)
  52. row = sheet.Rows[2]
  53. cell = row.Cells[0]
  54. s = cell.String()
  55. c.Assert(s, Equals, expected)
  56. row = sheet.Rows[4]
  57. cell = row.Cells[1]
  58. s = cell.String()
  59. c.Assert(s, Equals, "")
  60. s = sheet.Rows[4].Cells[2].String()
  61. c.Assert(s, Equals, expected)
  62. }