142 lines
3.8 KiB
C#
142 lines
3.8 KiB
C#
using System;
|
|
using LCU.API.Internal.DocumentIngestor.Utilities;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.Accounts;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.Tax;
|
|
using NUnit.Framework;
|
|
|
|
namespace LCU.API.Internal.DocumentIngestorTests.Utilities;
|
|
|
|
public class ToDetailStringExtensionTest
|
|
{
|
|
[Test]
|
|
public void ToDetailString_AccountOwnershipPersonNumberNotZero_FormatsPersonDetail()
|
|
{
|
|
var ownership = PersonOwnershipFactory();
|
|
|
|
var detail = ownership.ToDetailString();
|
|
|
|
StringAssert.Contains(ownership.PersonNumber.ToString(), detail);
|
|
StringAssert.Contains(ownership.FirstName, detail);
|
|
StringAssert.Contains(ownership.MiddleName, detail);
|
|
StringAssert.Contains(ownership.LastName, detail);
|
|
}
|
|
|
|
[Test]
|
|
public void ToDetailString_AccountOwnershipPersonNumberZero_FormatsOrganizationDetail()
|
|
{
|
|
var ownership = OrganizationOwnershipFactory();
|
|
|
|
var detail = ownership.ToDetailString();
|
|
|
|
StringAssert.Contains(ownership.OrganizationName, detail);
|
|
StringAssert.Contains(ownership.ByOrgNbr.ToString(), detail);
|
|
}
|
|
|
|
[Test]
|
|
public void ToDetailString_PersonTaxIdDataResponse_FormatsPersonDetail()
|
|
{
|
|
var ownership = PersonPersonTaxDataFactory();
|
|
|
|
var detail = ownership.ToDetailString();
|
|
|
|
StringAssert.Contains(ownership.PersonNumber.ToString(), detail);
|
|
StringAssert.Contains(ownership.FirstName, detail);
|
|
StringAssert.Contains(ownership.MiddleName, detail);
|
|
StringAssert.Contains(ownership.LastName, detail);
|
|
}
|
|
|
|
[Test]
|
|
public void ToDetailString_OrganizationTaxIdDataResponse_FormatsOrganizationDetail()
|
|
{
|
|
var ownership = OrganizationTaxDataFactory();
|
|
|
|
var detail = ownership.ToDetailString();
|
|
|
|
StringAssert.Contains(ownership.Name, detail);
|
|
StringAssert.Contains(ownership.OrganizationNumber.ToString(), detail);
|
|
}
|
|
|
|
[Test]
|
|
public void ToDetailString_EnumerableAccountOwnerships_SpacesBetweenEach()
|
|
{
|
|
var ownerships = new[]
|
|
{
|
|
PersonOwnershipFactory(),
|
|
OrganizationOwnershipFactory(),
|
|
PersonOwnershipFactory(),
|
|
OrganizationOwnershipFactory()
|
|
};
|
|
|
|
var detail = ownerships.ToDetailString();
|
|
|
|
foreach (var owner in ownerships)
|
|
{
|
|
StringAssert.IsMatch($"{owner.ToDetailString()}(; |$)", detail);
|
|
}
|
|
}
|
|
|
|
[Test]
|
|
public void ToDetailString_EnumerablePersonTaxIdDataResponses_SpacesBetweenEach()
|
|
{
|
|
var ownerships = new[]
|
|
{
|
|
PersonPersonTaxDataFactory(),
|
|
PersonPersonTaxDataFactory(),
|
|
PersonPersonTaxDataFactory()
|
|
};
|
|
|
|
var detail = ownerships.ToDetailString();
|
|
|
|
foreach (var owner in ownerships)
|
|
{
|
|
StringAssert.IsMatch($"{owner.ToDetailString()}(; |$)", detail);
|
|
}
|
|
}
|
|
|
|
[Test]
|
|
public void ToDetailString_EnumerableOrganizationTaxIdDataResponses_SpacesBetweenEach()
|
|
{
|
|
var ownerships = new[]
|
|
{
|
|
OrganizationTaxDataFactory(),
|
|
OrganizationTaxDataFactory(),
|
|
OrganizationTaxDataFactory()
|
|
};
|
|
|
|
var detail = ownerships.ToDetailString();
|
|
|
|
foreach (var owner in ownerships)
|
|
{
|
|
StringAssert.IsMatch($"{owner.ToDetailString()}(; |$)", detail);
|
|
}
|
|
}
|
|
|
|
private static AccountOwnership PersonOwnershipFactory() => new()
|
|
{
|
|
PersonNumber = DateTime.Now.Millisecond,
|
|
FirstName = Guid.NewGuid().ToString(),
|
|
MiddleName = Guid.NewGuid().ToString(),
|
|
LastName = Guid.NewGuid().ToString()
|
|
};
|
|
|
|
private static AccountOwnership OrganizationOwnershipFactory() => new()
|
|
{
|
|
PersonNumber = 0,
|
|
OrganizationName = Guid.NewGuid().ToString(),
|
|
ByOrgNbr = DateTime.Now.Millisecond
|
|
};
|
|
|
|
private static PersonTaxIdDataResponse PersonPersonTaxDataFactory() => new()
|
|
{
|
|
PersonNumber = DateTime.Now.Millisecond,
|
|
FirstName = Guid.NewGuid().ToString(),
|
|
MiddleName = Guid.NewGuid().ToString(),
|
|
LastName = Guid.NewGuid().ToString()
|
|
};
|
|
|
|
private static OrganizationTaxIdDataResponse OrganizationTaxDataFactory() => new()
|
|
{
|
|
Name = Guid.NewGuid().ToString(),
|
|
OrganizationNumber = DateTime.Now.Millisecond
|
|
};
|
|
} |