MCPcopy
hub / github.com/qax-os/excelize / TestSetPageLayout

Function TestSetPageLayout

sheet_test.go:199–233  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

197}
198
199func TestSetPageLayout(t *testing.T) {
200 f := NewFile()
201 assert.NoError(t, f.SetPageLayout("Sheet1", nil))
202 ws, ok := f.Sheet.Load("xl/worksheets/sheet1.xml")
203 assert.True(t, ok)
204 ws.(*xlsxWorksheet).PageSetUp = nil
205 expected := PageLayoutOptions{
206 Size: intPtr(1),
207 Orientation: stringPtr("landscape"),
208 FirstPageNumber: uintPtr(1),
209 AdjustTo: uintPtr(120),
210 FitToHeight: intPtr(2),
211 FitToWidth: intPtr(2),
212 BlackAndWhite: boolPtr(true),
213 PageOrder: stringPtr("overThenDown"),
214 }
215 assert.NoError(t, f.SetPageLayout("Sheet1", &expected))
216 opts, err := f.GetPageLayout("Sheet1")
217 assert.NoError(t, err)
218 assert.Equal(t, expected, opts)
219 // Test set page layout on not exists worksheet
220 assert.EqualError(t, f.SetPageLayout("SheetN", nil), "sheet SheetN does not exist")
221 // Test set page layout with invalid sheet name
222 assert.Equal(t, ErrSheetNameInvalid, f.SetPageLayout("Sheet:1", nil))
223 // Test set page layout with invalid parameters
224 assert.Equal(t, ErrPageSetupAdjustTo, f.SetPageLayout("Sheet1", &PageLayoutOptions{
225 AdjustTo: uintPtr(5),
226 }))
227 assert.EqualError(t, f.SetPageLayout("Sheet1", &PageLayoutOptions{
228 Orientation: stringPtr("x"),
229 }), "invalid Orientation value \"x\", acceptable value should be one of portrait, landscape")
230 assert.EqualError(t, f.SetPageLayout("Sheet1", &PageLayoutOptions{
231 PageOrder: stringPtr("x"),
232 }), "invalid PageOrder value \"x\", acceptable value should be one of overThenDown, downThenOver")
233}
234
235func TestGetPageLayout(t *testing.T) {
236 f := NewFile()

Callers

nothing calls this directly

Calls 7

SetPageLayoutMethod · 0.95
GetPageLayoutMethod · 0.95
NewFileFunction · 0.85
intPtrFunction · 0.85
stringPtrFunction · 0.85
uintPtrFunction · 0.85
boolPtrFunction · 0.85

Tested by

no test coverage detected