143 lines
7.4 KiB
C#
143 lines
7.4 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("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("Traubenübernahmeschein Nr. 20201001X001"));
|
|
Assert.That(text, Contains.Substring("Ich bin der Text, der auf einem Traubenübernahmeschein steht!"));
|
|
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: ?, ID: ? (netto/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("4725836")); // Betriebsnummer
|
|
Assert.That(text, Contains.Substring("pauschaliert"));
|
|
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
|
Assert.That(text, Contains.Substring("Traubenübernahmeschein Nr. 20201001X004"));
|
|
Assert.That(text, Contains.Substring("Ich bin der Text, der auf einem Traubenübernahmeschein steht!"));
|
|
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: ? (netto/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: ? (netto/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("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("Traubenübernahmeschein Nr. 20201001X003"));
|
|
Assert.That(text, Contains.Substring("Ich bin der Text, der auf einem Traubenübernahmeschein steht!"));
|
|
Assert.That(text, Contains.Substring("""
|
|
1 Grüner Veltliner Qualitätswein 75 15,4 2 561
|
|
Herkunft: Österreich / Weinland / Niederösterreich
|
|
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
|
Waage: ?, ID: ? (netto/gerebelt gewogen)
|
|
"""));
|
|
Assert.That(text, Contains.Substring("""
|
|
2 Grüner Veltliner Kabinett Kabinett 87 17,6 3 129
|
|
Herkunft: Österreich / Weinland / Niederösterreich
|
|
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
|
Waage: ?, ID: ? (netto/gerebelt gewogen)
|
|
"""));
|
|
Assert.That(text, Contains.Substring("""
|
|
3 Grüner Veltliner Qualitätswein 79 16,1 1 280
|
|
Herkunft: Österreich / Weinland / Niederösterreich
|
|
/ Matzner Hügel / Hohenruppersdorf / KG Hohenruppersdorf
|
|
Waage: ?, ID: ? (netto/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("7258369")); // Betriebsnummer
|
|
Assert.That(text, Contains.Substring("pauschaliert"));
|
|
Assert.That(text, Contains.Substring($"Wolkersdorf, am {DateTime.Now:dd.MM.yyyy}"));
|
|
Assert.That(text, Contains.Substring("Traubenübernahmeschein Nr. 20201002X001"));
|
|
Assert.That(text, Contains.Substring("Ich bin der Text, der auf einem Traubenübernahmeschein steht!"));
|
|
Assert.That(text, Contains.Substring("""
|
|
1 Grüner Veltliner Qualitätswein 80 16,3 3 198
|
|
Bewirtschaftung: Bio (AT-BIO-302)
|
|
Herkunft: Österreich / Weinland / Niederösterreich
|
|
/ Wolkersdorfer Hochleithen / Wolkersdorf im Weinviertel / KG Wolkersdorf
|
|
Waage: ?, ID: ? (netto/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: ? (netto/gerebelt gewogen)
|
|
"""));
|
|
Assert.That(text, Contains.Substring("Gesamt: 78 15,9 5 332"));
|
|
});
|
|
}
|
|
}
|
|
}
|