1
1
import { stackInstance } from '../utils/stack-instance' ;
2
2
import { Entries } from '../../src/lib/entries' ;
3
3
import { TEntry } from './types' ;
4
+ import { QueryOperation } from 'src/lib/types' ;
5
+ import { Query } from 'src/lib/query' ;
4
6
5
7
const stack = stackInstance ( ) ;
6
8
@@ -35,10 +37,26 @@ describe('Query Operators API test cases', () => {
35
37
expect ( ( query . entries [ 0 ] as any ) . multi_line ) . not . toBeDefined ( )
36
38
}
37
39
} ) ;
38
- } ) ;
40
+ it ( 'should return entries matching any of the conditions' , async ( ) => {
41
+ const query1 : Query = await makeEntries ( 'contenttype_uid' ) . query ( ) . containedIn ( 'title' , [ 'value' ] ) ;
42
+ const query2 : Query = await makeEntries ( 'contenttype_uid' ) . query ( ) . where ( 'title' , QueryOperation . EQUALS , 'value2' ) ;
43
+ const query = await makeEntries ( 'contenttype_uid' ) . query ( ) . or ( query1 , query2 ) . find < TEntry > ( ) ;
44
+
45
+ if ( query . entries ) {
46
+ expect ( query . entries ) . toHaveLength ( 2 ) ;
47
+ expect ( query . entries [ 0 ] . _version ) . toBeDefined ( ) ;
48
+ expect ( query . entries [ 0 ] . locale ) . toBeDefined ( ) ;
49
+ expect ( query . entries [ 0 ] . uid ) . toBeDefined ( ) ;
50
+ expect ( query . entries [ 0 ] . title ) . toBe ( 'value2' ) ;
51
+ expect ( query . entries [ 1 ] . _version ) . toBeDefined ( ) ;
52
+ expect ( query . entries [ 1 ] . locale ) . toBeDefined ( ) ;
53
+ expect ( query . entries [ 1 ] . uid ) . toBeDefined ( ) ;
54
+ expect ( query . entries [ 1 ] . title ) . toBe ( 'value' ) ;
55
+ }
56
+ } ) ;
57
+ } ) ;
39
58
40
- function makeEntries ( contentTypeUid = '' ) : Entries {
59
+ function makeEntries ( contentTypeUid = '' ) : Entries {
41
60
const entries = stack . ContentType ( contentTypeUid ) . Entry ( ) ;
42
-
43
61
return entries ;
44
- }
62
+ }
0 commit comments