diff options
author | xuri <xuri.me@gmail.com> | 2021-08-06 22:44:43 +0800 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2021-08-06 22:44:43 +0800 |
commit | cf9fbafdd805874267a0f5d27fd1c720b148ec91 (patch) | |
tree | 4eda7bd0d974160b5f396c05cd914ba8baf504da /datavalidation_test.go | |
parent | 933159f9391f9be1b41b51e85885722124f8a7aa (diff) |
This closes #979, fix the data validation deletion issue and tidy the internal function in the source code
Diffstat (limited to 'datavalidation_test.go')
-rw-r--r-- | datavalidation_test.go | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/datavalidation_test.go b/datavalidation_test.go index 13a0053..f0afe5f 100644 --- a/datavalidation_test.go +++ b/datavalidation_test.go @@ -129,10 +129,36 @@ func TestDeleteDataValidation(t *testing.T) { assert.NoError(t, dvRange.SetRange(10, 20, DataValidationTypeWhole, DataValidationOperatorBetween)) dvRange.SetInput("input title", "input body") assert.NoError(t, f.AddDataValidation("Sheet1", dvRange)) - assert.NoError(t, f.DeleteDataValidation("Sheet1", "A1:B2")) + + dvRange.Sqref = "A1" + assert.NoError(t, f.AddDataValidation("Sheet1", dvRange)) + assert.NoError(t, f.DeleteDataValidation("Sheet1", "B1")) + assert.NoError(t, f.DeleteDataValidation("Sheet1", "A1")) + + dvRange.Sqref = "C2:C5" + assert.NoError(t, f.AddDataValidation("Sheet1", dvRange)) + assert.NoError(t, f.DeleteDataValidation("Sheet1", "C4")) + + dvRange = NewDataValidation(true) + dvRange.Sqref = "D2:D2 D3 D4" + assert.NoError(t, dvRange.SetRange(10, 20, DataValidationTypeWhole, DataValidationOperatorBetween)) + dvRange.SetInput("input title", "input body") + assert.NoError(t, f.AddDataValidation("Sheet1", dvRange)) + assert.NoError(t, f.DeleteDataValidation("Sheet1", "D3")) + assert.NoError(t, f.SaveAs(filepath.Join("test", "TestDeleteDataValidation.xlsx"))) + dvRange.Sqref = "A" + assert.NoError(t, f.AddDataValidation("Sheet1", dvRange)) + assert.EqualError(t, f.DeleteDataValidation("Sheet1", "A1"), `cannot convert cell "A" to coordinates: invalid cell name "A"`) + + assert.EqualError(t, f.DeleteDataValidation("Sheet1", "A1:A"), `cannot convert cell "A" to coordinates: invalid cell name "A"`) + ws, ok := f.Sheet.Load("xl/worksheets/sheet1.xml") + assert.True(t, ok) + ws.(*xlsxWorksheet).DataValidations.DataValidation[0].Sqref = "A1:A" + assert.EqualError(t, f.DeleteDataValidation("Sheet1", "A1:B2"), `cannot convert cell "A" to coordinates: invalid cell name "A"`) + // Test delete data validation on no exists worksheet. assert.EqualError(t, f.DeleteDataValidation("SheetN", "A1:B2"), "sheet SheetN is not exist") } |