aboutsummaryrefslogtreecommitdiff
path: root/RhSolutions.Tests/RealPricelistTest.cs
diff options
context:
space:
mode:
Diffstat (limited to 'RhSolutions.Tests/RealPricelistTest.cs')
-rw-r--r--RhSolutions.Tests/RealPricelistTest.cs41
1 files changed, 41 insertions, 0 deletions
diff --git a/RhSolutions.Tests/RealPricelistTest.cs b/RhSolutions.Tests/RealPricelistTest.cs
new file mode 100644
index 0000000..37a9bc4
--- /dev/null
+++ b/RhSolutions.Tests/RealPricelistTest.cs
@@ -0,0 +1,41 @@
+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()
+ {
+ _addIn = new();
+ _addIn.AutoOpen();
+ _reader = RhSolutionsAddIn.ServiceProvider.GetRequiredService<IReader>();
+ }
+
+ [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 });
+ var _writer = new ExcelWriter(Util.Application, RhSolutionsAddIn.Configuration);
+ _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);
+ }
+}