blob: fa0acb730e60590a13f958ae2cc5ed02981fee6f [file] [log] [blame]
using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OfficeOpenXml.DataValidation;
using System.IO;
using OfficeOpenXml;
namespace EPPlusTest.DataValidation.IntegrationTests
{
/// <summary>
/// Remove the Ignore attributes from the testmethods if you want to run any of these tests
/// </summary>
[TestClass]
public class IntegrationTests : ValidationTestBase
{
[TestInitialize]
public void Setup()
{
SetupTestData();
}
[TestCleanup]
public void Cleanup()
{
CleanupTestData();
}
[TestMethod, Ignore]
public void DataValidations_AddOneValidationOfTypeWhole()
{
_sheet.Cells["B1"].Value = 2;
var validation = _sheet.DataValidations.AddIntegerValidation("A1");
validation.ShowErrorMessage = true;
validation.ErrorStyle = ExcelDataValidationWarningStyle.stop;
validation.ErrorTitle = "Invalid value was entered";
validation.PromptTitle = "Enter value here";
validation.Operator = ExcelDataValidationOperator.greaterThan;
//validation.Value.Value = 3;
validation.Formula.ExcelFormula = "B1";
_package.SaveAs(new FileInfo(GetTestOutputPath("AddOneValidationOfTypeWhole.xlsx")));
}
[TestMethod, Ignore]
public void DataValidations_AddOneValidationOfTypeDecimal()
{
var validation = _sheet.DataValidations.AddDecimalValidation("A1");
validation.ShowErrorMessage = true;
validation.ErrorStyle = ExcelDataValidationWarningStyle.stop;
validation.ErrorTitle = "Invalid value was entered";
validation.Error = "Value must be greater than 1.4";
validation.PromptTitle = "Enter value here";
validation.Prompt = "Enter a value that is greater than 1.4";
validation.ShowInputMessage = true;
validation.Operator = ExcelDataValidationOperator.greaterThan;
validation.Formula.Value = 1.4;
_package.SaveAs(new FileInfo(GetTestOutputPath("AddOneValidationOfTypeDecimal.xlsx")));
}
[TestMethod]
public void DataValidations_AddOneValidationOfTypeListOfTypeList()
{
var validation = _sheet.DataValidations.AddListValidation("A:A");
validation.ShowErrorMessage = true;
validation.ShowInputMessage = true;
validation.Formula.Values.Add("1");
validation.Formula.Values.Add("2");
validation.Formula.Values.Add("3");
validation.Validate();
_package.SaveAs(new FileInfo(GetTestOutputPath("AddOneValidationOfTypeList.xlsx")));
}
[TestMethod]
public void DataValidations_AddOneValidationOfTypeListOfTypeTime()
{
var validation = _sheet.DataValidations.AddTimeValidation("A1");
validation.ShowErrorMessage = true;
validation.ShowInputMessage = true;
validation.Formula.Value.Hour = 14;
validation.Formula.Value.Minute = 30;
validation.Operator = ExcelDataValidationOperator.greaterThan;
validation.Prompt = "Enter a time greater than 14:30";
validation.Error = "Invalid time was entered";
validation.Validate();
_package.SaveAs(new FileInfo(GetTestOutputPath("AddOneValidationOfTypeTime.xlsx")));
}
[TestMethod, Ignore]
public void DataValidations_ReadExistingWorkbookWithDataValidations()
{
using (var package = new ExcelPackage(new FileInfo(GetTestOutputPath("DVTest.xlsx"))))
{
Assert.AreEqual(3, package.Workbook.Worksheets[1].DataValidations.Count);
}
}
//[TestMethod]
//public void Bug_OpenOffice()
//{
// var xlsPath = GetTestOutputPath("OpenOffice.xlsx");
// var newFile = new FileInfo(xlsPath);
// if( newFile.Exists)
// {
// newFile.Delete();
// //ensures we create a new workbook
// newFile = new FileInfo(xlsPath);
// }
// using(var package = new ExcelPackage(newFile))
// {
// // add a new worksheet to the empty workbook
// var worksheet = package.Workbook.Worksheets.Add("Inventory");
// // Add the headers
// worksheet.Cells[1, 1].Value = "ID";
// worksheet.Cells[1, 2].Value = "Product";
//// worksheet.Cells[1, 3].Value = "Quantity";
// worksheet.Cells[1, 4].Value = "Price";
// worksheet.Cells[1, 5].Value = "Value";
// worksheet.Column(1).Width = 15;
// worksheet.Column(2).Width = 12;
// worksheet.Column(3).Width = 12;
// worksheet.View.PageLayoutView = true;
// package.Workbook.Properties.Title = "Invertory";
// package.Workbook.Properties.Author = "Jan Källman";
// package.Save();
// }
}
}