@@ -109,38 +109,60 @@ describe('Engine', () => {
109109 } )
110110
111111 describe ( 'removeRule()' , ( ) => {
112- describe ( 'rule instance' , ( ) => {
112+ context ( 'rule instance' , ( ) => {
113113 it ( 'removes the rule' , ( ) => {
114114 const rule = new Rule ( factories . rule ( ) )
115115 engine . addRule ( rule )
116116 expect ( engine . rules . length ) . to . equal ( 1 )
117- engine . removeRule ( rule )
117+
118+ const isRemoved = engine . removeRule ( rule )
119+
120+ expect ( isRemoved ) . to . be . true ( )
118121 expect ( engine . rules . length ) . to . equal ( 0 )
119122 expect ( engine . prioritizedRules ) . to . equal ( null )
120123 } )
121- } )
122124
123- it ( 'can only remove added rules' , ( ) => {
124- expect ( engine . rules . length ) . to . equal ( 0 )
125- const rule = new Rule ( factories . rule ( ) )
126- const isRemoved = engine . removeRule ( rule )
127- expect ( isRemoved ) . to . equal ( false )
128- } )
125+ it ( 'can only remove added rules' , ( ) => {
126+ expect ( engine . rules . length ) . to . equal ( 0 )
127+ const rule = new Rule ( factories . rule ( ) )
129128
130- it ( 'clears the "prioritizedRules" cache' , ( ) => {
131- const rule = new Rule ( factories . rule ( ) )
132- engine . addRule ( rule )
133- engine . prioritizeRules ( )
134- engine . removeRule ( rule )
135- expect ( engine . prioritizedRules ) . to . equal ( null )
129+ const isRemoved = engine . removeRule ( rule )
130+
131+ expect ( isRemoved ) . to . equal ( false )
132+ } )
133+
134+ it ( 'clears the "prioritizedRules" cache' , ( ) => {
135+ const rule = new Rule ( factories . rule ( ) )
136+ engine . addRule ( rule )
137+ engine . prioritizeRules ( )
138+ engine . removeRule ( rule )
139+ expect ( engine . prioritizedRules ) . to . equal ( null )
140+ } )
136141 } )
137- it ( 'removes rule based on ruleKey' , ( ) => {
138- const rule = new Rule ( factories . rule ( ) )
139- engine . addRule ( rule )
140- expect ( engine . rules . length ) . to . equal ( 1 )
141- engine . removeRule ( rule . id )
142- expect ( engine . rules . length ) . to . equal ( 0 )
143- expect ( engine . prioritizedRules ) . to . equal ( null )
142+
143+ context ( 'rule id' , ( ) => {
144+ it ( 'removes rule based on rule id' , ( ) => {
145+ const rule = new Rule ( factories . rule ( ) )
146+ engine . addRule ( rule )
147+ expect ( engine . rules . length ) . to . equal ( 1 )
148+
149+ const isRemoved = engine . removeRule ( rule . id )
150+
151+ expect ( isRemoved ) . to . be . true ( )
152+ expect ( engine . rules . length ) . to . equal ( 0 )
153+ expect ( engine . prioritizedRules ) . to . equal ( null )
154+ } )
155+
156+ it ( 'returns false when rule cannot be found' , ( ) => {
157+ const rule = new Rule ( factories . rule ( ) )
158+ engine . addRule ( rule )
159+ expect ( engine . rules . length ) . to . equal ( 1 )
160+
161+ const isRemoved = engine . removeRule ( 'not-found-id' )
162+
163+ expect ( isRemoved ) . to . be . false ( )
164+ expect ( engine . rules . length ) . to . equal ( 1 )
165+ } )
144166 } )
145167 } )
146168
0 commit comments