using Elwig.Documents;
using Elwig.Helpers;
using Elwig.Models.Dtos;

namespace Tests.DocumentTests {
    [TestFixture]
    public class MemberListTest {

        [Test]
        public async Task Test_01_TwoMembers() {
            using var ctx = new AppDbContext();
            var data = await MemberListData.FromQuery(ctx.Members, []);
            using var doc = new MemberList("Alle Mitglieder", data);
            var text = await Utils.GeneratePdfText(doc, true);
            Assert.Multiple(() => {
                Assert.That(text, Contains.Substring("Mitgliederliste"));
                Assert.That(text, Contains.Substring("Alle Mitglieder"));
                Assert.That(text, Contains.Substring("""
                     101 MUSTERMANN Max                 Winzerstraße 1            2223   Hohenruppersdorf   1472583     0   Hohenruppersdorf
                     102 WEINBAUER Wernhardt            Winzerstraße 2            2223   Hohenruppersdorf   4725836     0   Hohenruppersdorf
                         W&B Weinbauer GesbR            Winzerstraße 2            2223   Hohenruppersdorf
                    """));
            });
        }
    }
}