144 lines
7.5 KiB
C#
144 lines
7.5 KiB
C#
using Elwig.Documents;
|
||
using Elwig.Helpers;
|
||
|
||
namespace Tests.DocumentTests {
|
||
[TestFixture]
|
||
public class DeliveryNoteTest {
|
||
|
||
[Test]
|
||
public async Task Test_01_OneDeliveryPart() {
|
||
using var ctx = new AppDbContext();
|
||
var d = await ctx.Deliveries.FindAsync(2020, 1);
|
||
using var doc = new DeliveryNote(d!, ctx);
|
||
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("0123463")); // Betriebsnummer
|
||
Assert.That(text, Contains.Substring("pauschaliert"));
|
||
Assert.That(text, Contains.Substring($"Wolkersdorf, am {Elwig.Helpers.Utils.Today:dd.MM.yyyy}"));
|
||
Assert.That(text, Contains.Substring("Traubenübernahmeschein Nr. 20201001X001"));
|
||
Assert.That(text, Contains.Substring("Das Mitglied erklärt, dass die gelieferte Ware dem österreichischen Weingesetz entspricht"));
|
||
Assert.That(text, Contains.Substring("""
|
||
1 Grüner Veltliner Qualitätswein 73 15,0 3 219
|
||
Herkunft: Österreich / Weinland / Niederösterreich
|
||
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
||
Waage: 1, ID: 321 – 09:02, 01.10.2020
|
||
Brutto: 3 219 kg – Tara: 0 kg – Netto: 3 219 kg – gerebelt gewogen
|
||
"""));
|
||
});
|
||
}
|
||
|
||
[Test]
|
||
public async Task Test_02_TwoDeliveryParts() {
|
||
using var ctx = new AppDbContext();
|
||
var d = await ctx.Deliveries.FindAsync(2020, 4);
|
||
using var doc = new DeliveryNote(d!, ctx);
|
||
var text = await Utils.GeneratePdfText(doc);
|
||
Assert.Multiple(() => {
|
||
Assert.That(text, Contains.Substring("""
|
||
W&B Weinbauer GesbR
|
||
WEINBAUER Wernhardt
|
||
Winzerstraße 2
|
||
2223 Hohenruppersdorf
|
||
"""));
|
||
Assert.That(text, Contains.Substring("0123471")); // Betriebsnummer
|
||
Assert.That(text, Contains.Substring("pauschaliert"));
|
||
Assert.That(text, Contains.Substring($"Wolkersdorf, am {Elwig.Helpers.Utils.Today:dd.MM.yyyy}"));
|
||
Assert.That(text, Contains.Substring("Traubenübernahmeschein Nr. 20201001X004"));
|
||
Assert.That(text, Contains.Substring("Das Mitglied erklärt, dass die gelieferte Ware dem österreichischen Weingesetz entspricht"));
|
||
Assert.That(text, Contains.Substring("""
|
||
1 Grüner Veltliner Qualitätswein 82 16,7 4 002
|
||
Herkunft: Österreich / Weinland / Niederösterreich
|
||
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("""
|
||
2 Grüner Veltliner Qualitätswein 75 15,3 481
|
||
Herkunft: Österreich / Weinland / Niederösterreich
|
||
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("Gesamt: 81 16,5 4 483"));
|
||
});
|
||
}
|
||
|
||
[Test]
|
||
public async Task Test_03_DeliveryPartsWithAttribute() {
|
||
using var ctx = new AppDbContext();
|
||
var d = await ctx.Deliveries.FindAsync(2020, 3);
|
||
using var doc = new DeliveryNote(d!, ctx);
|
||
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("0123463")); // Betriebsnummer
|
||
Assert.That(text, Contains.Substring("pauschaliert"));
|
||
Assert.That(text, Contains.Substring($"Wolkersdorf, am {Elwig.Helpers.Utils.Today:dd.MM.yyyy}"));
|
||
Assert.That(text, Contains.Substring("Traubenübernahmeschein Nr. 20201001X003"));
|
||
Assert.That(text, Contains.Substring("Das Mitglied erklärt, dass die gelieferte Ware dem österreichischen Weingesetz entspricht"));
|
||
Assert.That(text, Contains.Substring("""
|
||
1 Grüner Veltliner Wein 75 15,4 2 561
|
||
Herkunft: Österreich
|
||
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("""
|
||
2 Grüner Veltliner Kabinett Wein 87 17,6 3 129
|
||
Herkunft: Österreich
|
||
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("""
|
||
3 Grüner Veltliner Wein 79 16,1 1 280
|
||
Herkunft: Österreich
|
||
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("Gesamt: 81 16,5 6 970"));
|
||
});
|
||
}
|
||
|
||
[Test]
|
||
public async Task Test_04_DeliveryPartsWithCultivation() {
|
||
using var ctx = new AppDbContext();
|
||
var d = await ctx.Deliveries.FindAsync(2020, 7);
|
||
using var doc = new DeliveryNote(d!, ctx);
|
||
var text = await Utils.GeneratePdfText(doc);
|
||
Assert.Multiple(() => {
|
||
Assert.That(text, Contains.Substring("""
|
||
MUSTERBAUER Matthäus
|
||
Brünner Straße 10
|
||
2120 Wolkersdorf im Weinviertel
|
||
"""));
|
||
Assert.That(text, Contains.Substring("0123480")); // Betriebsnummer
|
||
Assert.That(text, Contains.Substring("pauschaliert"));
|
||
Assert.That(text, Contains.Substring($"Wolkersdorf, am {Elwig.Helpers.Utils.Today:dd.MM.yyyy}"));
|
||
Assert.That(text, Contains.Substring("Traubenübernahmeschein Nr. 20201002X001"));
|
||
Assert.That(text, Contains.Substring("Das Mitglied erklärt, dass die gelieferte Ware dem österreichischen Weingesetz entspricht"));
|
||
Assert.That(text, Contains.Substring("""
|
||
1 Grüner Veltliner Wein 80 16,3 3 198
|
||
Bewirtschaftung: Bio (AT-BIO-302)
|
||
Herkunft: Österreich
|
||
/ Wolkersdorfer Hochleithen / Wolkersdorf im Weinviertel / KG Wolkersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("""
|
||
2 Grüner Veltliner Qualitätswein 75 15,4 2 134
|
||
Bewirtschaftung: Bio (AT-BIO-302)
|
||
Herkunft: Österreich / Weinland / Niederösterreich
|
||
/ Wolkersdorfer Hochleithen / Wolkersdorf im Weinviertel / KG Wolkersdorf
|
||
Waage: ?, ID: ? (gerebelt gewogen)
|
||
"""));
|
||
Assert.That(text, Contains.Substring("Gesamt: 78 15,9 5 332"));
|
||
});
|
||
}
|
||
}
|
||
}
|