diff --git a/.changeset/thick-shrimps-peel.md b/.changeset/thick-shrimps-peel.md new file mode 100644 index 0000000000..70609a7357 --- /dev/null +++ b/.changeset/thick-shrimps-peel.md @@ -0,0 +1,5 @@ +--- +"@medusajs/promotion": patch +--- + +Fix not in promotion rule empty value validation diff --git a/packages/modules/promotion/integration-tests/__tests__/services/promotion-module/evaluate-rule-value-condition.spec.ts b/packages/modules/promotion/integration-tests/__tests__/services/promotion-module/evaluate-rule-value-condition.spec.ts index 1a3a4a138b..f9edfa3250 100644 --- a/packages/modules/promotion/integration-tests/__tests__/services/promotion-module/evaluate-rule-value-condition.spec.ts +++ b/packages/modules/promotion/integration-tests/__tests__/services/promotion-module/evaluate-rule-value-condition.spec.ts @@ -35,6 +35,7 @@ moduleIntegrationTestRunner({ expect(testFunc(["2"], operator, [2])).toEqual(false) expect(testFunc(["2"], operator, ["2"])).toEqual(false) expect(testFunc(["2"], operator, ["22"])).toEqual(true) + expect(testFunc(["2"], operator, [])).toEqual(true) }) }) diff --git a/packages/modules/promotion/src/utils/validations/promotion-rule.ts b/packages/modules/promotion/src/utils/validations/promotion-rule.ts index 064cf2af7c..5715e1e375 100644 --- a/packages/modules/promotion/src/utils/validations/promotion-rule.ts +++ b/packages/modules/promotion/src/utils/validations/promotion-rule.ts @@ -118,7 +118,12 @@ export function evaluateRuleValueCondition( : [ruleValuesToCheck] if (!valuesToCheck.length) { - return false + switch (operator) { + case "ne": + return true + default: + return false + } } switch (operator) {