blob: 025220c411b7a013c0b1a60bd391de99b5b7a790 [file] [log] [blame]
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OfficeOpenXml;
using System.IO;
namespace EPPlusTest
{
[TestClass]
public class Encrypt : TestBase
{
[TestMethod]
[Ignore]
public void ReadWriteEncrypt()
{
using (ExcelPackage pck = new ExcelPackage(new FileInfo(@"Test\Drawing.xlsx"), true))
{
pck.Encryption.Password = "EPPlus";
pck.Encryption.Algorithm = EncryptionAlgorithm.AES192;
pck.Workbook.Protection.SetPassword("test");
pck.Workbook.Protection.LockStructure = true;
pck.Workbook.Protection.LockWindows = true;
pck.SaveAs(new FileInfo(@"Test\DrawingEncr.xlsx"));
}
using (ExcelPackage pck = new ExcelPackage(new FileInfo(_worksheetPath + @"\DrawingEncr.xlsx"), true, "EPPlus"))
{
pck.Encryption.IsEncrypted = false;
pck.SaveAs(new FileInfo(_worksheetPath + @"\DrawingNotEncr.xlsx"));
}
FileStream fs = new FileStream(_worksheetPath + @"\DrawingEncr.xlsx", FileMode.Open, FileAccess.ReadWrite);
using (ExcelPackage pck = new ExcelPackage(fs, "EPPlus"))
{
pck.Encryption.IsEncrypted = false;
pck.SaveAs(new FileInfo(_worksheetPath + @"DrawingNotEncr.xlsx"));
}
}
[TestMethod]
[Ignore]
public void WriteEncrypt()
{
ExcelPackage package = new ExcelPackage();
//Load the sheet with one string column, one date column and a few random numbers.
var ws = package.Workbook.Worksheets.Add("First line test");
ws.Cells[1, 1].Value = "1; 1";
ws.Cells[2, 1].Value = "2; 1";
ws.Cells[1, 2].Value = "1; 2";
ws.Cells[2, 2].Value = "2; 2";
ws.Row(1).Style.Font.Bold = true;
ws.Column(1).Style.Font.Bold = true;
//package.Encryption.Algorithm = EncryptionAlgorithm.AES256;
//package.SaveAs(new FileInfo(@"c:\temp\encrTest.xlsx"), "ABxsw23edc");
package.Encryption.Password = "test";
package.Encryption.IsEncrypted = true;
package.SaveAs(new FileInfo(@"c:\temp\encrTest.xlsx"));
}
[TestMethod]
[Ignore]
public void WriteProtect()
{
ExcelPackage package = new ExcelPackage(new FileInfo(@"c:\temp\workbookprot2.xlsx"), "");
//Load the sheet with one string column, one date column and a few random numbers.
//package.Workbook.Protection.LockWindows = true;
//package.Encryption.IsEncrypted = true;
package.Workbook.Protection.SetPassword("t");
package.Workbook.Protection.LockStructure = true;
package.Workbook.View.Left = 585;
package.Workbook.View.Top = 150;
package.Workbook.View.Width = 17310;
package.Workbook.View.Height = 38055;
var ws = package.Workbook.Worksheets.Add("First line test");
ws.Cells[1, 1].Value = "1; 1";
ws.Cells[2, 1].Value = "2; 1";
ws.Cells[1, 2].Value = "1; 2";
ws.Cells[2, 2].Value = "2; 2";
package.SaveAs(new FileInfo(@"c:\temp\workbookprot2.xlsx"));
}
[TestMethod]
[Ignore]
public void DecrypTest()
{
var p = new ExcelPackage(new FileInfo(@"c:\temp\encr.xlsx"), "test");
var n = p.Workbook.Worksheets[1].Name;
p.Encryption.Password = null;
p.SaveAs(new FileInfo(@"c:\temp\encrNew.xlsx"));
}
[TestMethod]
[Ignore]
public void EncrypTest()
{
var f = new FileInfo(@"c:\temp\encrwrite.xlsx");
if (f.Exists)
{
f.Delete();
}
var p = new ExcelPackage(f);
p.Workbook.Protection.SetPassword("");
p.Workbook.Protection.LockStructure = true;
p.Encryption.Version = EncryptionVersion.Agile;
var ws = p.Workbook.Worksheets.Add("Sheet1");
for (int r = 1; r < 1000; r++)
{
ws.Cells[r, 1].Value = r;
}
p.Save();
}
}
}