Skip to content

Commit

Permalink
test(Pool): fix how additional addresses of sites are compared
Browse files Browse the repository at this point in the history
  • Loading branch information
nicoprow committed Mar 6, 2025
1 parent 43d06d9 commit d53d63f
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -129,12 +129,18 @@ class ExpectedBusinessPartnerResultFactory(
fun mapToExpectedAddresses(
hierarchy: LegalEntityHierarchy
): List<LogisticAddressVerboseDto> {
return listOf(mapToExpectedAddress(hierarchy.legalEntity))
.plus(hierarchy.getAllSites().map { mapToExpectedAddress(it, hierarchy.legalEntity.legalEntity.isCatenaXMemberData) })
.plus(hierarchy.getAllAddresses().map { mapToExpectedAddress(it, hierarchy.legalEntity.legalEntity.isCatenaXMemberData) })
val isCxMember = hierarchy.legalEntity.legalEntity.isCatenaXMemberData
val legalEntityAdditionalAddresses = hierarchy.addresses
val siteAdditionalAddressesWithBpnl = hierarchy.siteHierarchy
.flatMap{ siteHierarchy -> siteHierarchy.addresses.map { Pair(it, siteHierarchy.site.bpnlParent) } }

return listOf(mapLegalEntityToExpectedLegalAddress(hierarchy.legalEntity))
.plus(hierarchy.getAllSites().map { mapSiteToExpectedSiteMainAddress(it, isCxMember) })
.plus(legalEntityAdditionalAddresses.map { mapToExpectedAdditionalAddress(it,isCxMember) })
.plus(siteAdditionalAddressesWithBpnl.map { (additionalAddress, bpnl) -> mapToExpectedAdditionalAddress(additionalAddress, isCxMember, bpnLegalEntityOverwrite = bpnl) })
}

fun mapToExpectedAddress(
fun mapLegalEntityToExpectedLegalAddress(
givenRequest: LegalEntityPartnerCreateRequest,
givenBpnA: String = StringIgnoreComparator.IGNORE_STRING,
bpnLegalEntity: String = StringIgnoreComparator.IGNORE_STRING,
Expand All @@ -153,7 +159,7 @@ class ExpectedBusinessPartnerResultFactory(
)
}

fun mapToExpectedAddress(
fun mapSiteToExpectedSiteMainAddress(
givenRequest: SitePartnerCreateRequest,
isCatenaXMemberData: Boolean,
givenBpnA: String = StringIgnoreComparator.IGNORE_STRING,
Expand All @@ -173,17 +179,18 @@ class ExpectedBusinessPartnerResultFactory(
)
}

fun mapToExpectedAddress(
fun mapToExpectedAdditionalAddress(
givenRequest: AddressPartnerCreateRequest,
isCatenaXMemberData: Boolean,
givenBpnA: String = StringIgnoreComparator.IGNORE_STRING,
bpnLegalEntityOverwrite: String? = null,
createdAt: Instant = Instant.MIN,
updatedAt: Instant = createdAt
): LogisticAddressVerboseDto {
return mapToExpectedResult(
givenRequest = givenRequest.address,
givenBpnA = givenBpnA,
bpnLegalEntity = givenRequest.bpnParent.takeIf { it.startsWith("BPNL") },
bpnLegalEntity = bpnLegalEntityOverwrite ?: givenRequest.bpnParent.takeIf { it.startsWith("BPNL") },
bpnSite = givenRequest.bpnParent.takeIf { it.startsWith("BPNS") },
addressType = AddressType.AdditionalAddress,
isCatenaXMemberData = isCatenaXMemberData,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,8 @@ class PoolAssertHelper(
creationTimeframe: Timeframe,
updateTimeframe: Timeframe = creationTimeframe
) {
Assertions.assertThat(actual.first())

Assertions.assertThat(actual)
.usingRecursiveComparison()
.ignoringCollectionOrder()
.ignoringAllOverriddenEquals()
Expand All @@ -117,7 +118,9 @@ class PoolAssertHelper(
.withComparatorForType(instantSecondsComparator, Instant::class.java)
.withComparatorForType(localDatetimeSecondsComparator, LocalDateTime::class.java)
.withComparatorForType(stringIgnoreComparator, String::class.java)
.isEqualTo(expected.first())
.isEqualTo(expected)



actual.forEach { Assertions.assertThat(it.createdAt).isBetween(creationTimeframe.startTime, creationTimeframe.endTime) }
actual.forEach { Assertions.assertThat(it.updatedAt).isBetween(updateTimeframe.startTime, updateTimeframe.endTime) }
Expand Down

0 comments on commit d53d63f

Please sign in to comment.