Selaa lähdekoodia

Slightly fleshed out the baselines testcase for readRowsFromSheet ahead of attempting to refactor

Geoffrey J. Teale 14 vuotta sitten
vanhempi
commit
43793f1126
1 muutettua tiedostoa jossa 86 lisäystä ja 71 poistoa
  1. 86 71
      lib_test.go

+ 86 - 71
lib_test.go

@@ -84,77 +84,6 @@ func TestReadSharedStringsFromZipFile(t *testing.T) {
 }
 
 
-func TestReadRowsFromSheet(t *testing.T) {
-	var sharedstringsXML = bytes.NewBufferString(`
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="4" uniqueCount="4">
-  <si>
-    <t>Foo</t>
-  </si>
-  <si>
-    <t>Bar</t>
-  </si>
-  <si>
-    <t xml:space="preserve">Baz </t>
-  </si>
-  <si>
-    <t>Quuk</t>
-  </si>
-</sst>`)
-	var sheetxml = bytes.NewBufferString(`
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" 
-           xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
-  <dimension ref="A1:B2"/>
-  <sheetViews>
-    <sheetView tabSelected="1" workbookViewId="0">
-      <selection activeCell="C2" sqref="C2"/>
-    </sheetView>
-  </sheetViews>
-  <sheetFormatPr baseColWidth="10" defaultRowHeight="15"/>
-  <sheetData>
-    <row r="1" spans="1:2">
-      <c r="A1" t="s">
-        <v>0</v>
-      </c>
-      <c r="B1" t="s">
-        <v>1</v>
-      </c>
-    </row>
-    <row r="2" spans="1:2">
-      <c r="A2" t="s">
-        <v>2</v>
-      </c>
-      <c r="B2" t="s">
-        <v>3</v>
-      </c>
-    </row>
-  </sheetData>
-  <pageMargins left="0.7" right="0.7" 
-               top="0.78740157499999996" 
-               bottom="0.78740157499999996" 
-               header="0.3" 
-               footer="0.3"/>
-</worksheet>`)
-	worksheet := new(XLSXWorksheet)
-	error := xml.Unmarshal(sheetxml, worksheet)
-	if error != nil {
-		t.Error(error.String())
-		return
-	}
-	sst := new(XLSXSST)
-	error = xml.Unmarshal(sharedstringsXML, sst)
-	if error != nil {
-		t.Error(error.String())
-		return
-	}
-	reftable := MakeSharedStringRefTable(sst)
-	rows := readRowsFromSheet(worksheet, reftable)
-	if len(rows) != 2 {
-		t.Error("Expected len(rows) == 2")
-	}
-	
-}
 
 
 func TestLettersToNumeric(t *testing.T) {
@@ -287,6 +216,92 @@ func TestGetRangeFromString(t *testing.T) {
 }
 
 
+func TestReadRowsFromSheet(t *testing.T) {
+	var sharedstringsXML = bytes.NewBufferString(`
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="4" uniqueCount="4">
+  <si>
+    <t>Foo</t>
+  </si>
+  <si>
+    <t>Bar</t>
+  </si>
+  <si>
+    <t xml:space="preserve">Baz </t>
+  </si>
+  <si>
+    <t>Quuk</t>
+  </si>
+</sst>`)
+	var sheetxml = bytes.NewBufferString(`
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" 
+           xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
+  <dimension ref="A1:B2"/>
+  <sheetViews>
+    <sheetView tabSelected="1" workbookViewId="0">
+      <selection activeCell="C2" sqref="C2"/>
+    </sheetView>
+  </sheetViews>
+  <sheetFormatPr baseColWidth="10" defaultRowHeight="15"/>
+  <sheetData>
+    <row r="1" spans="1:2">
+      <c r="A1" t="s">
+        <v>0</v>
+      </c>
+      <c r="B1" t="s">
+        <v>1</v>
+      </c>
+    </row>
+    <row r="2" spans="1:2">
+      <c r="A2" t="s">
+        <v>2</v>
+      </c>
+      <c r="B2" t="s">
+        <v>3</v>
+      </c>
+    </row>
+  </sheetData>
+  <pageMargins left="0.7" right="0.7" 
+               top="0.78740157499999996" 
+               bottom="0.78740157499999996" 
+               header="0.3" 
+               footer="0.3"/>
+</worksheet>`)
+	worksheet := new(XLSXWorksheet)
+	error := xml.Unmarshal(sheetxml, worksheet)
+	if error != nil {
+		t.Error(error.String())
+		return
+	}
+	sst := new(XLSXSST)
+	error = xml.Unmarshal(sharedstringsXML, sst)
+	if error != nil {
+		t.Error(error.String())
+		return
+	}
+	reftable := MakeSharedStringRefTable(sst)
+	rows := readRowsFromSheet(worksheet, reftable)
+	if len(rows) != 2 {
+		t.Error("Expected len(rows) == 2")
+	}
+	row := rows[0]
+	if len(row.Cells) != 2 {
+		t.Error("Expected len(row.Cells) == 2, got ", strconv.Itoa(len(row.Cells)))
+	}
+	cell1 := row.Cells[0]
+	if cell1.String() != "Foo" {
+		t.Error("Expected cell1.String() == 'Foo', got ", cell1.String())
+	}
+	cell2 := row.Cells[1]
+	if cell2.String() != "Bar" {
+		t.Error("Expected cell2.String() == 'Bar', got ", cell2.String())
+	}
+	
+	
+}
+
+
 func TestReadRowsFromSheetWithEmptyCells(t *testing.T) {
 	var sharedstringsXML = bytes.NewBufferString(`
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>