From 27e24a1098c47972e887ce10685c125713ee064c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ozan=20ERT=C3=9CRK?= Date: Sat, 13 Apr 2019 20:34:16 +0300 Subject: [PATCH 1/2] fix for issue : https://github.com/CacheControl/json-rules-engine/issues/120 --- src/engine.js | 1 + test/engine.test.js | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/src/engine.js b/src/engine.js index 2a0ee48..178bc83 100644 --- a/src/engine.js +++ b/src/engine.js @@ -66,6 +66,7 @@ class Engine extends EventEmitter { let index = this.rules.indexOf(rule) if (index === -1) return false + this.prioritizedRules = null return Boolean(this.rules.splice(index, 1).length) } diff --git a/test/engine.test.js b/test/engine.test.js index f72c451..12d272f 100644 --- a/test/engine.test.js +++ b/test/engine.test.js @@ -89,6 +89,7 @@ describe('Engine', () => { expect(engine.rules.length).to.equal(1) engine.removeRule(rule) expect(engine.rules.length).to.equal(0) + expect(engine.prioritizedRules).to.equal(null) }) }) @@ -106,6 +107,14 @@ describe('Engine', () => { const isRemoved = engine.removeRule(rule) expect(isRemoved).to.equal(false) }) + + it('has to remove prioritizedRules list after prioritizeRules() called', () => { + let rule = new Rule(factories.rule()) + engine.addRule(rule) + engine.prioritizeRules() + engine.removeRule(rule) + expect(engine.prioritizedRules).to.equal(null) + }) }) describe('addOperator()', () => { From 1e875d98e180de311329ede53222888644e7b756 Mon Sep 17 00:00:00 2001 From: Cache Hamm Date: Tue, 23 Apr 2019 13:55:47 -0600 Subject: [PATCH 2/2] Update engine.test.js --- test/engine.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/engine.test.js b/test/engine.test.js index 12d272f..f5b48cb 100644 --- a/test/engine.test.js +++ b/test/engine.test.js @@ -108,7 +108,7 @@ describe('Engine', () => { expect(isRemoved).to.equal(false) }) - it('has to remove prioritizedRules list after prioritizeRules() called', () => { + it('clears the "prioritizedRules" cache', () => { let rule = new Rule(factories.rule()) engine.addRule(rule) engine.prioritizeRules()