Tests: Add CreditNoteTest
This commit is contained in:
44
Tests/DocumentTests/CreditNoteTest.cs
Normal file
44
Tests/DocumentTests/CreditNoteTest.cs
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
using Elwig.Documents;
|
||||||
|
using Elwig.Helpers;
|
||||||
|
using Elwig.Models.Dtos;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
|
||||||
|
namespace Tests.DocumentTests {
|
||||||
|
[TestFixture]
|
||||||
|
public class CreditNoteTest {
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public async Task Test_01_VirtualCreditNote() {
|
||||||
|
using var ctx = new AppDbContext();
|
||||||
|
var m = await ctx.Members.FindAsync(101);
|
||||||
|
var p = await ctx.MemberPayments.Where(p => p.Year == 2020 && p.AvNr == 1).SingleAsync();
|
||||||
|
var data = await CreditNoteDeliveryData.ForPaymentVariant(ctx.CreditNoteDeliveryRows, ctx.Seasons, 2020, 1);
|
||||||
|
Console.WriteLine(data.Count);
|
||||||
|
using var doc = new CreditNote(ctx, p, data[m!.MgNr], false, false, false,
|
||||||
|
ctx.GetMemberUnderDelivery(2020, m!.MgNr).GetAwaiter().GetResult());
|
||||||
|
var text = await Utils.GeneratePdfText(doc);
|
||||||
|
Assert.Multiple(() => {
|
||||||
|
Assert.That(text, Contains.Substring("""
|
||||||
|
MUSTERMANN Max
|
||||||
|
Winzerstraße 1
|
||||||
|
2223 Hohenruppersdorf
|
||||||
|
"""));
|
||||||
|
Assert.That(text, Contains.Substring("1472583")); // Betriebsnummer
|
||||||
|
Assert.That(text, Contains.Substring("pauschaliert"));
|
||||||
|
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
||||||
|
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 - -
|
||||||
|
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 - -
|
||||||
|
20201001X005 1 Welschriesling 84 17,0 ungeb.: 3 192 - -
|
||||||
|
20201001X005 2 Welschriesling 84 17,1 ungeb.: 2 190 - -
|
||||||
|
"""));
|
||||||
|
Assert.That(text, Contains.Substring("Gesamtbetrag: € 1 000,00"));
|
||||||
|
Assert.That(text, Contains.Substring("Auszahlungsbetrag: € 1 000,00"));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -15,21 +15,21 @@ namespace Tests.DocumentTests {
|
|||||||
var text = await Utils.GeneratePdfText(doc);
|
var text = await Utils.GeneratePdfText(doc);
|
||||||
Assert.Multiple(() => {
|
Assert.Multiple(() => {
|
||||||
Assert.That(text, Contains.Substring("""
|
Assert.That(text, Contains.Substring("""
|
||||||
MUSTERMANN Max
|
MUSTERMANN Max
|
||||||
Winzerstraße 1
|
Winzerstraße 1
|
||||||
2223 Hohenruppersdorf
|
2223 Hohenruppersdorf
|
||||||
"""));
|
"""));
|
||||||
Assert.That(text, Contains.Substring("1472583")); // Betriebsnummer
|
Assert.That(text, Contains.Substring("1472583")); // Betriebsnummer
|
||||||
Assert.That(text, Contains.Substring("pauschaliert"));
|
Assert.That(text, Contains.Substring("pauschaliert"));
|
||||||
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
||||||
Assert.That(text, Contains.Substring("Anlieferungsbestätigung 2020"));
|
Assert.That(text, Contains.Substring("Anlieferungsbestätigung 2020"));
|
||||||
Assert.That(text, Contains.Substring("""
|
Assert.That(text, Contains.Substring("""
|
||||||
20201001X003 2 Grüner Veltliner Kabinett Kabinett 87 17,6
|
20201001X003 2 Grüner Veltliner Kabinett Kabinett 87 17,6 ungeb.: 3 129 3 129 n
|
||||||
20201001X003 3 Grüner Veltliner Qualitätswein 79 16,1
|
20201001X003 3 Grüner Veltliner Qualitätswein 79 16,1 ungeb.: 1 280 1 280 n
|
||||||
20201001X003 1 Grüner Veltliner Qualitätswein 75 15,4
|
20201001X003 1 Grüner Veltliner Qualitätswein 75 15,4 ungeb.: 2 561 2 561 n
|
||||||
20201001X001 1 Grüner Veltliner Qualitätswein 73 15,0
|
20201001X001 1 Grüner Veltliner Qualitätswein 73 15,0 ungeb.: 3 219 3 219 n
|
||||||
20201001X005 2 Welschriesling Kabinett 84 17,1
|
20201001X005 2 Welschriesling Kabinett 84 17,1 ungeb.: 2 190 2 190 n
|
||||||
20201001X005 1 Welschriesling Kabinett 84 17,0
|
20201001X005 1 Welschriesling Kabinett 84 17,0 ungeb.: 3 192 3 192 n
|
||||||
"""));
|
"""));
|
||||||
Assert.That(text, Contains.Substring("Gesamt: 15 571"));
|
Assert.That(text, Contains.Substring("Gesamt: 15 571"));
|
||||||
Assert.That(text, Contains.Substring("""
|
Assert.That(text, Contains.Substring("""
|
||||||
|
@ -39,11 +39,11 @@ namespace Tests.DocumentTests {
|
|||||||
var text = await Utils.GeneratePdfText(doc);
|
var text = await Utils.GeneratePdfText(doc);
|
||||||
Assert.Multiple(() => {
|
Assert.Multiple(() => {
|
||||||
Assert.That(text, Contains.Substring("""
|
Assert.That(text, Contains.Substring("""
|
||||||
W&B Weinbauer GesbR
|
W&B Weinbauer GesbR
|
||||||
WEINBAUER Wernhardt
|
WEINBAUER Wernhardt
|
||||||
Winzerstraße 2
|
Winzerstraße 2
|
||||||
2223 Hohenruppersdorf
|
2223 Hohenruppersdorf
|
||||||
"""));
|
"""));
|
||||||
Assert.That(text, Contains.Substring("4725836")); // Betriebsnummer
|
Assert.That(text, Contains.Substring("4725836")); // Betriebsnummer
|
||||||
Assert.That(text, Contains.Substring("pauschaliert"));
|
Assert.That(text, Contains.Substring("pauschaliert"));
|
||||||
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
-- deletes for DocumentTests
|
-- deletes for DocumentTests
|
||||||
|
|
||||||
|
DELETE FROM payment_variant;
|
||||||
DELETE FROM delivery;
|
DELETE FROM delivery;
|
||||||
DELETE FROM season;
|
DELETE FROM season;
|
||||||
DELETE FROM wine_attribute;
|
DELETE FROM wine_attribute;
|
||||||
|
@ -51,3 +51,17 @@ INSERT INTO delivery_part (year, did, dpnr, sortid, attrid, cultid, weight, kmw,
|
|||||||
(2020, 11, 2, 'ZW', NULL, NULL, 3862, 17.2, 'KAB', 'WLNO', 15224, TRUE, FALSE, FALSE, NULL, NULL, NULL),
|
(2020, 11, 2, 'ZW', NULL, NULL, 3862, 17.2, 'KAB', 'WLNO', 15224, TRUE, FALSE, FALSE, NULL, NULL, NULL),
|
||||||
(2020, 12, 1, 'BP', NULL, NULL, 2410, 18.0, 'KAB', 'WLNO', 15224, TRUE, FALSE, FALSE, NULL, NULL, NULL),
|
(2020, 12, 1, 'BP', NULL, NULL, 2410, 18.0, 'KAB', 'WLNO', 15224, TRUE, FALSE, FALSE, NULL, NULL, NULL),
|
||||||
(2020, 12, 2, 'BP', NULL, NULL, 2313, 18.1, 'KAB', 'WLNO', 15224, TRUE, FALSE, FALSE, NULL, NULL, NULL);
|
(2020, 12, 2, 'BP', NULL, NULL, 2313, 18.1, 'KAB', 'WLNO', 15224, TRUE, FALSE, FALSE, NULL, NULL, NULL);
|
||||||
|
|
||||||
|
INSERT INTO delivery_part_bucket (year, did, dpnr, bktnr, discr, value) VALUES
|
||||||
|
(2020, 1, 1, 0, '_', 3219),
|
||||||
|
(2020, 3, 1, 0, '_', 2561),
|
||||||
|
(2020, 3, 2, 0, '_', 3129),
|
||||||
|
(2020, 3, 3, 0, '_', 1280),
|
||||||
|
(2020, 5, 1, 0, '_', 3192),
|
||||||
|
(2020, 5, 2, 0, '_', 2190);
|
||||||
|
|
||||||
|
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_member (year, avnr, mgnr, net_amount) VALUES
|
||||||
|
(2020, 1, 101, 10000000);
|
||||||
|
Reference in New Issue
Block a user