@@ -21,6 +21,31 @@ describe('DSSqlAdapter#findAll', function () {
2121assert . equal ( users [ 0 ] . profileId , profile1 . id ) ;
2222} ) ;
2323
24+ it ( 'should filter using the "like" operator' , function * ( ) {
25+ let user1 = yield adapter . create ( User , { name :'Sean' } ) ;
26+ let post1 = yield adapter . create ( Post , { userId :user1 . id , content :'foo' } ) ;
27+ let post2 = yield adapter . create ( Post , { userId :user1 . id , content :'bar' } ) ;
28+ let post3 = yield adapter . create ( Post , { userId :user1 . id , content :'baz' } ) ;
29+
30+ let posts = yield adapter . findAll ( Post , { where :{ 'content' :{ 'like' :'ba%' } } } ) ;
31+ assert . equal ( posts . length , 2 ) ;
32+ assert . equal ( posts [ 0 ] . content , 'bar' ) ;
33+ assert . equal ( posts [ 1 ] . content , 'baz' ) ;
34+ } ) ;
35+
36+ it ( 'should filter using the "or like" operator' , function * ( ) {
37+ let user1 = yield adapter . create ( User , { name :'Sean' } ) ;
38+ let post1 = yield adapter . create ( Post , { userId :user1 . id , content :'foo' } ) ;
39+ let post2 = yield adapter . create ( Post , { userId :user1 . id , content :'bar' } ) ;
40+ let post3 = yield adapter . create ( Post , { userId :user1 . id , content :'baz' } ) ;
41+
42+ let posts = yield adapter . findAll ( Post , { where :{ 'content' :{ 'like' :'ba%' , '|like' :'f%' } } } ) ;
43+ assert . equal ( posts . length , 3 ) ;
44+ assert . equal ( posts [ 0 ] . content , 'foo' ) ;
45+ assert . equal ( posts [ 1 ] . content , 'bar' ) ;
46+ assert . equal ( posts [ 2 ] . content , 'baz' ) ;
47+ } ) ;
48+
2449describe ( 'near' , function ( ) {
2550beforeEach ( function * ( ) {
2651this . googleAddress = yield adapter . create ( Address , { name :'Google' , latitude :37.4219999 , longitude :- 122.0862515 } ) ;