using Elwig.Documents; using Elwig.Helpers; using Elwig.Models.Dtos; namespace Tests.DocumentTests { [TestFixture] public class DeliveryJournalTest { [Test] public async Task Test_01_AllDeliveries2020() { using var ctx = new AppDbContext(); var data = await DeliveryJournalData.FromQuery(ctx.Deliveries.Where(d => d.Year == 2020).SelectMany(d => d.Parts), ["Saison 2020"]); using var doc = new DeliveryJournal("Saison 2020", data); var text = await Utils.GeneratePdfText(doc, true); var table = Utils.ExtractTable(text); Assert.Multiple(() => { Assert.That(text, Contains.Substring("Lieferjournal")); Assert.That(text, Contains.Substring("Saison 2020")); Assert.That(table, Is.EqualTo(new string[][] { ["20201001X001", "1", "01.10.2020 09:03", "101 MUSTERMANN Max", "Grüner Veltliner", "73", "15,0", "3 219"], ["20201001X002", "1", "01.10.2020 09:35", "102 WEINBAUER Wernhardt", "Grüner Veltliner", "86", "17,5", "2 987"], ["20201001X002", "2", "01.10.2020 09:35", "102 WEINBAUER Wernhardt", "Grüner Veltliner", "87", "17,7", "1 873"], ["20201001X003", "1", "01.10.2020 10:24", "101 MUSTERMANN Max", "Grüner Veltliner", "75", "15,4", "2 561"], ["20201001X003", "2", "01.10.2020 10:24", "101 MUSTERMANN Max", "Grüner Veltliner", "87", "17,6", "3 129"], ["20201001X003", "3", "01.10.2020 10:24", "101 MUSTERMANN Max", "Grüner Veltliner", "79", "16,1", "1 280"], ["20201001X004", "1", "01.10.2020 11:13", "102 WEINBAUER Wernhardt", "Grüner Veltliner", "82", "16,7", "4 002"], ["20201001X004", "2", "01.10.2020 11:13", "102 WEINBAUER Wernhardt", "Grüner Veltliner", "75", "15,3", "481"], ["20201001X005", "1", "01.10.2020 12:45", "101 MUSTERMANN Max", "Welschriesling", "84", "17,0", "3 192"], ["20201001X005", "2", "01.10.2020 12:45", "101 MUSTERMANN Max", "Welschriesling", "84", "17,1", "2 190"], ["20201001X006", "1", "01.10.2020 13:18", "102 WEINBAUER Wernhardt", "Grüner Veltliner", "74", "15,2", "1 732"], ["20201002X001", "1", "02.10.2020 09:13", "103 MUSTERBAUER Matthäus", "Grüner Veltliner", "80", "16,3", "3 198"], ["20201002X001", "2", "02.10.2020 09:13", "103 MUSTERBAUER Matthäus", "Grüner Veltliner", "75", "15,4", "2 134"], ["20201002X002", "1", "02.10.2020 09:28", "103 MUSTERBAUER Matthäus", "Grüner Veltliner", "78", "16,0", "2 901"], ["20201002X002", "2", "02.10.2020 09:28", "103 MUSTERBAUER Matthäus", "Grüner Veltliner", "85", "17,3", "3 321"], ["20201002X003", "1", "02.10.2020 10:11", "103 MUSTERBAUER Matthäus", "Welschriesling", "85", "17,2", "3 998"], ["20201003X001", "1", "03.10.2020 14:13", "104 WINZER Waltraud", "Zweigelt", "73", "15,0", "1 212"], ["20201003X001", "2", "03.10.2020 14:13", "104 WINZER Waltraud", "Zweigelt", "74", "15,2", "2 471"], ["20201003X001", "3", "03.10.2020 14:13", "104 WINZER Waltraud", "Zweigelt", "77", "15,7", "842"], ["20201003X002", "1", "03.10.2020 14:39", "104 WINZER Waltraud", "Zweigelt", "84", "17,0", "3 578"], ["20201003X002", "2", "03.10.2020 14:39", "104 WINZER Waltraud", "Zweigelt", "85", "17,2", "3 862"], ["20201003X003", "1", "03.10.2020 15:15", "104 WINZER Waltraud", "Blauer Portugieser", "89", "18,0", "2 410"], ["20201003X003", "2", "03.10.2020 15:15", "104 WINZER Waltraud", "Blauer Portugieser", "89", "18,1", "2 313"], ["Gesamt:", "(Teil-)Lieferungen: 12 (23)", "82", "16,6", "58 886"], })); }); } } }