using System.Linq;
using AwesomeAssertions;
using NUnit.Framework;
using Soneta.CRM;
namespace Soneta.Skills.Test.CRM.Kontrahenci;
///
/// W8 — Osoby kontaktowe.
/// Test pokazuje dodanie osoby kontaktowej i powiązanie jej z kontrahentem przez
/// KontaktOsoba.Kontrahent — osoba pojawia się wtedy w kolekcji Osoby kontrahenta.
///
[TestFixture]
public class OsobyKontaktoweTest : KontrahentTestBase
{
[Test]
[Description("Dodana i powiązana osoba kontaktowa pojawia się w kolekcji Osoby kontrahenta.")]
public void DodanieOsoby_PojawiaSieWKolekcjiOsoby()
{
var kod = UnikalnyKod();
UtworzKontrahenta(kod, "Firma Z Osoba");
SaveDispose();
var email = "a.nowak@firma-" + kod + ".pl";
var k = Crm.Kontrahenci.WgKodu[kod];
InTransaction(() =>
{
var os = new KontaktOsoba();
Session.AddRow(os);
os.Kontrahent = k; // powiązanie osoby z kontrahentem
os.Imie = "Anna";
os.Nazwisko = "Nowak";
os.Stanowisko = "Kierownik zakupów";
os.EMAIL = email;
});
SaveDispose();
var zapisany = Crm.Kontrahenci.WgKodu[kod];
zapisany.Osoby.Cast()
.Any(o => o.Nazwisko == "Nowak" && o.Imie == "Anna")
.Should().BeTrue();
}
}