@@ -216,3 +216,47 @@ describe('root', () => {
216216 expect ( value ) . toEqual ( [ 1 , 99 ] ) ;
217217 } ) ;
218218} ) ;
219+
220+ describe ( 'arithmetic' , ( ) => {
221+ it ( 'should add' , ( ) => {
222+ const value = search ( { foo : 60 , bar : 10 } , 'foo + bar' ) ;
223+ expect ( value ) . toEqual ( 70 ) ;
224+ } ) ;
225+
226+ it ( 'should subtract' , ( ) => {
227+ const value = search ( { foo : 60 , bar : 10 } , 'foo - bar' ) ;
228+ expect ( value ) . toEqual ( 50 ) ;
229+ } ) ;
230+
231+ it ( 'should multiply' , ( ) => {
232+ const value = search ( { foo : 60 , bar : 10 } , 'foo * bar' ) ;
233+ expect ( value ) . toEqual ( 600 ) ;
234+ } ) ;
235+
236+ it ( 'should divide' , ( ) => {
237+ const value = search ( { foo : 60 , bar : 10 } , 'foo / bar' ) ;
238+ expect ( value ) . toEqual ( 6 ) ;
239+ } ) ;
240+
241+ it ( 'should mod' , ( ) => {
242+ const value = search ( { foo : 62 , bar : 10 } , 'foo % bar' ) ;
243+ expect ( value ) . toEqual ( 2 ) ;
244+ } ) ;
245+
246+ it ( 'should div' , ( ) => {
247+ const value = search ( { foo : 62 , bar : 10 } , 'foo // bar' ) ;
248+ expect ( value ) . toEqual ( 6 ) ;
249+ } ) ;
250+ } ) ;
251+
252+ describe ( 'number literals' , ( ) => {
253+ it ( 'should compare number literals' , ( ) => {
254+ const value = search ( { foo : 60 , bar : 10 } , 'foo > 50' ) ;
255+ expect ( value ) . toEqual ( true ) ;
256+ } ) ;
257+
258+ it ( 'should add number literals' , ( ) => {
259+ const value = search ( { } , '10 + 60' ) ;
260+ expect ( value ) . toEqual ( 70 ) ;
261+ } ) ;
262+ } ) ;
0 commit comments