diff options
author | xuri <xuri.me@gmail.com> | 2020-05-24 20:20:22 +0800 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2020-05-24 20:20:22 +0800 |
commit | a546427fd9324af8320e3f7062ddba8d2343a3c3 (patch) | |
tree | 18aca7c5c4a8550a6304a96e6084f2be4ce26b6a /styles_test.go | |
parent | 7f78464f7f6ecd87c5f5c53d7c00320fd53c4a03 (diff) |
Resolve #643, avoid creating duplicate style
Diffstat (limited to 'styles_test.go')
-rw-r--r-- | styles_test.go | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/styles_test.go b/styles_test.go index 1ff0e4e..9b8ba39 100644 --- a/styles_test.go +++ b/styles_test.go @@ -26,9 +26,7 @@ func TestStyleFill(t *testing.T) { for _, testCase := range cases { xl := NewFile() styleID, err := xl.NewStyle(testCase.format) - if err != nil { - t.Fatal(err) - } + assert.NoError(t, err) styles := xl.stylesReader() style := styles.CellXfs.Xf[styleID] @@ -38,6 +36,13 @@ func TestStyleFill(t *testing.T) { assert.Equal(t, *style.FillID, 0, testCase.label) } } + f := NewFile() + styleID1, err := f.NewStyle(`{"fill":{"type":"pattern","pattern":1,"color":["#000000"]}}`) + assert.NoError(t, err) + styleID2, err := f.NewStyle(`{"fill":{"type":"pattern","pattern":1,"color":["#000000"]}}`) + assert.NoError(t, err) + assert.Equal(t, styleID1, styleID2) + assert.NoError(t, f.SaveAs(filepath.Join("test", "TestStyleFill.xlsx"))) } func TestSetConditionalFormat(t *testing.T) { @@ -232,3 +237,11 @@ func TestSetCellStyle(t *testing.T) { // Test set cell style on not exists worksheet. assert.EqualError(t, f.SetCellStyle("SheetN", "A1", "A2", 1), "sheet SheetN is not exist") } + +func TestGetStyleID(t *testing.T) { + assert.Equal(t, -1, NewFile().getStyleID(&xlsxStyleSheet{}, nil)) +} + +func TestGetFillID(t *testing.T) { + assert.Equal(t, -1, getFillID(NewFile().stylesReader(), &Style{Fill: Fill{Type: "unknown"}})) +} |