chore: Treat internal event differently, primarely do not display info logs for those events (#8767)

* chore: Treat internal event differently, primarely do not display info log for those events

* revert doc

* add few tests

* only set internal option if present

* revert to previous condition

* start including feedback after discussion

* include feedback

* fix modules integration tests

* fix modules integration tests

* fix event bus local
This commit is contained in:
Adrien de Peretti authored and GitHub committed 2024-08-28 16:46:40 +02:00
1 parent 6cfe9bd874
commit 5bec38538a
27 files changed
+915 -465

No files matched your search

@@ -167,14 +167,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
})
)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_CREATED,
action: "created",
object: "fulfillment_set",
data: { id: fulfillmentSet.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_CREATED,
action: "created",
object: "fulfillment_set",
data: { id: fulfillmentSet.id },
}),
],
{
internal: true,
}
)
})
it("should create a collection of fulfillment sets", async function () {
@@ -211,7 +216,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "fulfillment_set",
data: { id: fulfillmentSets[i].id },
}),
])
]),
{
internal: true,
}
)
++i
@@ -245,20 +253,25 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
})
)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_CREATED,
action: "created",
object: "fulfillment_set",
data: { id: fulfillmentSet.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SERVICE_ZONE_CREATED,
action: "created",
object: "service_zone",
data: { id: fulfillmentSet.service_zones[0].id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_CREATED,
action: "created",
object: "fulfillment_set",
data: { id: fulfillmentSet.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SERVICE_ZONE_CREATED,
action: "created",
object: "service_zone",
data: { id: fulfillmentSet.service_zones[0].id },
}),
],
{
internal: true,
}
)
})
it("should create a collection of fulfillment sets with new service zones", async function () {
@@ -326,7 +339,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "service_zone",
data: { id: fulfillmentSets[i].service_zones[0].id },
}),
])
]),
{
internal: true,
}
)
++i
@@ -373,26 +389,31 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
})
)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_CREATED,
action: "created",
object: "fulfillment_set",
data: { id: fulfillmentSet.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SERVICE_ZONE_CREATED,
action: "created",
object: "service_zone",
data: { id: fulfillmentSet.service_zones[0].id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_CREATED,
action: "created",
object: "geo_zone",
data: { id: fulfillmentSet.service_zones[0].geo_zones[0].id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_CREATED,
action: "created",
object: "fulfillment_set",
data: { id: fulfillmentSet.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SERVICE_ZONE_CREATED,
action: "created",
object: "service_zone",
data: { id: fulfillmentSet.service_zones[0].id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_CREATED,
action: "created",
object: "geo_zone",
data: { id: fulfillmentSet.service_zones[0].geo_zones[0].id },
}),
],
{
internal: true,
}
)
})
it("should create a collection of fulfillment sets with new service zones and new geo zones", async function () {
@@ -496,7 +517,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
id: fulfillmentSets[i].service_zones[0].geo_zones[0].id,
},
}),
])
]),
{
internal: true,
}
)
++i
@@ -633,14 +657,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
})
)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_UPDATED,
action: "updated",
object: "fulfillment_set",
data: { id: updatedFulfillmentSets.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_SET_UPDATED,
action: "updated",
object: "fulfillment_set",
data: { id: updatedFulfillmentSets.id },
}),
],
{
internal: true,
}
)
})
it("should update a collection of fulfillment sets", async function () {
@@ -698,7 +727,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "fulfillment_set",
data: { id: currentFullfillmentSet.id },
}),
])
]),
{
internal: true,
}
)
}
})
@@ -816,7 +848,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
id: createdFulfillmentSet.service_zones[0].geo_zones[0].id,
},
}),
])
]),
{
internal: true,
}
)
})
@@ -920,7 +955,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
id: createdServiceZone.geo_zones[0].id,
},
}),
])
]),
{
internal: true,
}
)
})
@@ -1087,7 +1125,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
.id,
},
}),
])
]),
{
internal: true,
}
)
}
@@ -1230,7 +1271,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
id: createdServiceZone.geo_zones[0].id,
},
}),
])
]),
{
internal: true,
}
)
}
@@ -153,32 +153,37 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(4)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_CREATED,
action: "created",
object: "fulfillment",
data: { id: fulfillment.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ADDRESS_CREATED,
action: "created",
object: "fulfillment_address",
data: { id: fulfillment.delivery_address.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ITEM_CREATED,
action: "created",
object: "fulfillment_item",
data: { id: fulfillment.items[0].id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_CREATED,
action: "created",
object: "fulfillment_label",
data: { id: fulfillment.labels[0].id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_CREATED,
action: "created",
object: "fulfillment",
data: { id: fulfillment.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ADDRESS_CREATED,
action: "created",
object: "fulfillment_address",
data: { id: fulfillment.delivery_address.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ITEM_CREATED,
action: "created",
object: "fulfillment_item",
data: { id: fulfillment.items[0].id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_CREATED,
action: "created",
object: "fulfillment_label",
data: { id: fulfillment.labels[0].id },
}),
],
{
internal: true,
}
)
})
it("should create a return fulfillment", async () => {
@@ -240,32 +245,37 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(4)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_CREATED,
action: "created",
object: "fulfillment",
data: { id: fulfillment.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ADDRESS_CREATED,
action: "created",
object: "fulfillment_address",
data: { id: fulfillment.delivery_address.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ITEM_CREATED,
action: "created",
object: "fulfillment_item",
data: { id: fulfillment.items[0].id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_CREATED,
action: "created",
object: "fulfillment_label",
data: { id: fulfillment.labels[0].id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_CREATED,
action: "created",
object: "fulfillment",
data: { id: fulfillment.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ADDRESS_CREATED,
action: "created",
object: "fulfillment_address",
data: { id: fulfillment.delivery_address.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_ITEM_CREATED,
action: "created",
object: "fulfillment_item",
data: { id: fulfillment.items[0].id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_CREATED,
action: "created",
object: "fulfillment_label",
data: { id: fulfillment.labels[0].id },
}),
],
{
internal: true,
}
)
})
})
@@ -374,32 +384,37 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(4)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_UPDATED,
action: "updated",
object: "fulfillment",
data: { id: updatedFulfillment.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_DELETED,
action: "deleted",
object: "fulfillment_label",
data: { id: label3.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_UPDATED,
action: "updated",
object: "fulfillment_label",
data: { id: label2.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_CREATED,
action: "created",
object: "fulfillment_label",
data: { id: label4.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_UPDATED,
action: "updated",
object: "fulfillment",
data: { id: updatedFulfillment.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_DELETED,
action: "deleted",
object: "fulfillment_label",
data: { id: label3.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_UPDATED,
action: "updated",
object: "fulfillment_label",
data: { id: label2.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_LABEL_CREATED,
action: "created",
object: "fulfillment_label",
data: { id: label4.id },
}),
],
{
internal: true,
}
)
})
})
@@ -450,14 +465,20 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
expect(idempotentResult.canceled_at).toEqual(result.canceled_at)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(1)
expect(eventBusEmitSpy).toHaveBeenNthCalledWith(1, [
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_UPDATED,
action: "updated",
object: "fulfillment",
data: { id: fulfillment.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenNthCalledWith(
1,
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.FULFILLMENT_UPDATED,
action: "updated",
object: "fulfillment",
data: { id: fulfillment.id },
}),
],
{
internal: true,
}
)
})
it("should fail to cancel a fulfillment that is already shipped", async () => {
@@ -107,14 +107,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(1)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_CREATED,
action: "created",
object: "geo_zone",
data: { id: geoZone.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_CREATED,
action: "created",
object: "geo_zone",
data: { id: geoZone.id },
}),
],
{
internal: true,
}
)
})
it("should create a collection of geo zones", async function () {
@@ -165,7 +170,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "geo_zone",
data: { id: geoZones[i].id },
}),
])
]),
{
internal: true,
}
)
++i
@@ -265,14 +273,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
})
)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_UPDATED,
action: "updated",
object: "geo_zone",
data: { id: updatedGeoZone.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_UPDATED,
action: "updated",
object: "geo_zone",
data: { id: updatedGeoZone.id },
}),
],
{
internal: true,
}
)
})
it("should update a collection of geo zones", async function () {
@@ -337,7 +350,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "geo_zone",
data: { id: expectedGeoZone.id },
}),
])
]),
{
internal: true,
}
)
}
})
@@ -366,32 +366,37 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)!
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(4)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_DELETED,
action: "deleted",
object: "geo_zone",
data: { id: ukGeoZone.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SERVICE_ZONE_UPDATED,
action: "updated",
object: "service_zone",
data: { id: updatedServiceZone.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_CREATED,
action: "created",
object: "geo_zone",
data: { id: chGeoZone.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_UPDATED,
action: "updated",
object: "geo_zone",
data: { id: usGeoZone.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_DELETED,
action: "deleted",
object: "geo_zone",
data: { id: ukGeoZone.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SERVICE_ZONE_UPDATED,
action: "updated",
object: "service_zone",
data: { id: updatedServiceZone.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_CREATED,
action: "created",
object: "geo_zone",
data: { id: chGeoZone.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.GEO_ZONE_UPDATED,
action: "updated",
object: "geo_zone",
data: { id: usGeoZone.id },
}),
],
{
internal: true,
}
)
})
it("should fail on duplicated service zone name", async function () {
@@ -517,26 +517,31 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(3)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_CREATED,
action: "created",
object: "shipping_option",
data: { id: createdShippingOption.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_TYPE_CREATED,
action: "created",
object: "shipping_option_type",
data: { id: createdShippingOption.type.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_RULE_CREATED,
action: "created",
object: "shipping_option_rule",
data: { id: createdShippingOption.rules[0].id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_CREATED,
action: "created",
object: "shipping_option",
data: { id: createdShippingOption.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_TYPE_CREATED,
action: "created",
object: "shipping_option_type",
data: { id: createdShippingOption.type.id },
}),
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_RULE_CREATED,
action: "created",
object: "shipping_option_rule",
data: { id: createdShippingOption.rules[0].id },
}),
],
{
internal: true,
}
)
})
it("should create multiple new shipping options", async function () {
@@ -624,7 +629,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "shipping_option_rule",
data: { id: createdShippingOptions[i].rules[0].id },
}),
])
]),
{
internal: true,
}
)
++i
@@ -819,7 +827,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "shipping_option_rule",
data: { id: updatedShippingOption.rules[0].id },
}),
])
]),
{
internal: true,
}
)
})
@@ -1247,14 +1258,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(1)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_RULE_CREATED,
action: "created",
object: "shipping_option_rule",
data: { id: rule.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_RULE_CREATED,
action: "created",
object: "shipping_option_rule",
data: { id: rule.id },
}),
],
{
internal: true,
}
)
const rules = await service.listShippingOptionRules()
expect(rules).toHaveLength(2)
@@ -1324,14 +1340,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
})
)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_RULE_UPDATED,
action: "updated",
object: "shipping_option_rule",
data: { id: updatedRule.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_OPTION_RULE_UPDATED,
action: "updated",
object: "shipping_option_rule",
data: { id: updatedRule.id },
}),
],
{
internal: true,
}
)
})
it("should fail to update a non-existent shipping option rule", async () => {
@@ -45,14 +45,19 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
)
expect(eventBusEmitSpy.mock.calls[0][0]).toHaveLength(1)
expect(eventBusEmitSpy).toHaveBeenCalledWith([
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_PROFILE_CREATED,
action: "created",
object: "shipping_profile",
data: { id: createdShippingProfile.id },
}),
])
expect(eventBusEmitSpy).toHaveBeenCalledWith(
[
buildExpectedEventMessageShape({
eventName: FulfillmentEvents.SHIPPING_PROFILE_CREATED,
action: "created",
object: "shipping_profile",
data: { id: createdShippingProfile.id },
}),
],
{
internal: true,
}
)
})
it("should create multiple new shipping profiles", async function () {
@@ -90,7 +95,10 @@ moduleIntegrationTestRunner<IFulfillmentModuleService>({
object: "shipping_profile",
data: { id: createdShippingProfiles[i].id },
}),
])
]),
{
internal: true,
}
)
++i
@@ -14,18 +14,18 @@ import {
UpdateServiceZoneDTO,
} from "@medusajs/types"
import {
EmitEvents,
InjectManager,
InjectTransactionManager,
MedusaContext,
MedusaError,
ModulesSdkUtils,
arrayDifference,
deepEqualObj,
EmitEvents,
getSetDifference,
InjectManager,
InjectTransactionManager,
isDefined,
isPresent,
isString,
MedusaContext,
MedusaError,
ModulesSdkUtils,
promiseAll,
} from "@medusajs/utils"
import {