diff --git a/Tests/DocumentTests/CreditNoteTest.cs b/Tests/DocumentTests/CreditNoteTest.cs index 0e188d5..e23cbcc 100644 --- a/Tests/DocumentTests/CreditNoteTest.cs +++ b/Tests/DocumentTests/CreditNoteTest.cs @@ -28,7 +28,7 @@ namespace Tests.DocumentTests { Assert.That(text, Contains.Substring("Traubengutschrift Max Mustermann – Probevariante")); Assert.That(text, Contains.Substring("AT12 3456 7890 1234 5678")); Assert.That(text, Contains.Substring(""" - 20201001X001 1 Grüner Veltliner 73 15,0 ungeb.: 3 219 - - + 20201001X001 1 Grüner Veltliner 73 15,0 ungeb.: 3 219 0,5000 - - 1 609,50 20201001X003 1 Grüner Veltliner 75 15,4 ungeb.: 2 561 - - 20201001X003 2 Grüner Veltliner Kabinett 87 17,6 ungeb.: 3 129 - - 20201001X003 3 Grüner Veltliner 79 16,1 ungeb.: 1 280 - - diff --git a/Tests/DocumentTests/PaymentVariantSummaryTest.cs b/Tests/DocumentTests/PaymentVariantSummaryTest.cs new file mode 100644 index 0000000..427e04b --- /dev/null +++ b/Tests/DocumentTests/PaymentVariantSummaryTest.cs @@ -0,0 +1,30 @@ +using Elwig.Documents; +using Elwig.Helpers; +using Elwig.Models.Dtos; +using System.Text.RegularExpressions; + +namespace Tests.DocumentTests { + [TestFixture] + public class PaymentVariantSummaryTest { + + [Test] + public async Task Test_01_PaymentVariant2020() { + using var ctx = new AppDbContext(); + var v = (await ctx.PaymentVariants.FindAsync(2020, 1))!; + var data = await PaymentVariantSummaryData.ForPaymentVariant(v, ctx.PaymentVariantSummaryRows); + using var doc = new PaymentVariantSummary(v, data); + var text = await Utils.GeneratePdfText(doc, true); + var table = text.Split('\n').Select(l => Regex.Split(l.Trim(), "[ ]{2,}")).Where(l => l.Length > 2).ToArray(); + Assert.Multiple(() => { + Assert.That(text, Contains.Substring("Auszahlungsvariante")); + Assert.That(text, Contains.Substring(v.Name)); + Assert.That(table, Is.EqualTo(new string[][] { + [ "Gradation", "ungebunden", "gebunden", "Gesamt" ], + [ "[°Oe]", "[kg]", "[€/kg]", "[kg]", "[€/kg]", "[€]" ], + ["Grüner Veltliner", "3 219", "0", "1 609,50"], + ["Qualitätswein", "73", "3 219", "0,5000", "-", "-", "1 609,50"], + })); + }); + } + } +} diff --git a/Tests/Resources/Sql/DocumentInsert.sql b/Tests/Resources/Sql/DocumentInsert.sql index bccb96d..35b2b07 100644 --- a/Tests/Resources/Sql/DocumentInsert.sql +++ b/Tests/Resources/Sql/DocumentInsert.sql @@ -63,5 +63,9 @@ INSERT INTO delivery_part_bucket (year, did, dpnr, bktnr, discr, value) VALUES INSERT INTO payment_variant (year, avnr, name, date, transfer_date, test_variant, calc_time, comment, data) VALUES (2020, 1, 'Probevariante', '2021-01-15', '2021-01-15', TRUE, NULL, NULL, '{}'); +INSERT INTO payment_delivery_part_bucket (year, did, dpnr, bktnr, avnr, price, amount) VALUES +(2020, 1, 1, 0, 1, 5000, 16095000); +DELETE FROM payment_member; + INSERT INTO payment_member (year, avnr, mgnr, net_amount) VALUES (2020, 1, 101, 10000000);