RhSolutions-AddIn/RhSolutions.Tests/RealPricelistTest.cs

43 lines
1.5 KiB
C#
Raw Normal View History

2023-05-21 15:47:09 +03:00
using Microsoft.Extensions.DependencyInjection;
using RhSolutions.AddIn;
using System.IO;
namespace RhSolutions.Tests;
[ExcelTestSettings(OutOfProcess = true)]
public class RealPricelistTest : IDisposable
{
private RhSolutionsAddIn _addIn;
private IReader _reader;
public RealPricelistTest()
{
2023-12-09 23:04:49 +03:00
Environment.SetEnvironmentVariable("ISTESTING", "true");
2023-05-21 15:47:09 +03:00
_addIn = new();
_addIn.AutoOpen();
2023-05-23 07:01:33 +03:00
_reader = new ExcelReader(Util.Application, RhSolutionsAddIn.Configuration);
2023-05-21 15:47:09 +03:00
}
[ExcelFact(Workbook = @"..\..\..\TestWorkbooks\RealTestSpecification.xlsm")]
public void CanWrite()
{
Worksheet sourceSheet = Util.Workbook.Worksheets[1];
RhSolutionsAddIn.Configuration.SetPriceListPath(Path.GetFullPath(@"..\..\..\TestWorkbooks\RealTargetSpecification.xlsx"));
var products = _reader.ReadProducts(new[] { sourceSheet });
2023-06-20 07:25:44 +03:00
var _writer = new NewPriceWriter(Util.Application, RhSolutionsAddIn.Configuration);
2023-05-21 15:47:09 +03:00
_writer.WriteProducts(products);
Worksheet targetSheet = Util.Application.ActiveWindow.ActiveSheet;
targetSheet.Range["A1"].Formula = "=SUM(H:H)";
Assert.Equal("RealTestSpecification", products.First().Item1);
Assert.Equal("RealTargetSpecification.xlsx", Util.Application.ActiveWorkbook.Name);
Assert.Equal(1188.0, targetSheet.Range["A1"].Value);
}
public void Dispose()
{
_addIn.AutoClose();
Util.Application.ActiveWindow.Close(SaveChanges: false);
}
}