@@ -9,6 +9,7 @@ jest.mock('@contentstack/core');
9
9
const getDataMock = < jest . Mock < typeof core . getData > > ( < unknown > core . getData ) ;
10
10
11
11
describe ( 'Synchronization function' , ( ) => {
12
+ const SYNC_URL = '/stacks/sync' ;
12
13
beforeEach ( ( ) => {
13
14
getDataMock . mockImplementation ( ( _client , _url , params ) => {
14
15
const resp : any = axiosGetMock ;
@@ -28,63 +29,63 @@ describe('Synchronization function', () => {
28
29
} ;
29
30
it ( 'should have valid init and environment params as req params when no request params is passed' , async ( ) => {
30
31
await await synchronization ( httpClient ( { } ) ) ;
31
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
32
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'init' ) ;
33
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( { init : true } ) ;
32
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
33
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'init' ) ;
34
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( { init : true } ) ;
34
35
} ) ;
35
36
36
37
it ( 'should have only pagination_token param when sync is called with pagination_token.' , async ( ) => {
37
38
await syncCall ( { paginationToken : '<page_tkn>' } ) ;
38
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
39
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
39
40
expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . not . toHaveProperty ( 'init' ) ;
40
41
expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . not . toHaveProperty ( 'environment' ) ;
41
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'pagination_token' ) ;
42
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( { pagination_token : '<page_tkn>' } ) ;
42
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'pagination_token' ) ;
43
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( { pagination_token : '<page_tkn>' } ) ;
43
44
} ) ;
44
45
it ( 'should have only sync_token param when sync is called with sync_token.' , async ( ) => {
45
46
await syncCall ( { syncToken : '<sync_tkn>' } ) ;
46
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
47
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
47
48
expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . not . toHaveProperty ( 'init' ) ;
48
49
expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . not . toHaveProperty ( 'environment' ) ;
49
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'sync_token' ) ;
50
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( { sync_token : '<sync_tkn>' } ) ;
50
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'sync_token' ) ;
51
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( { sync_token : '<sync_tkn>' } ) ;
51
52
} ) ;
52
53
it ( 'should have valid content_type_uid when content_type_uid is passed as param' , async ( ) => {
53
54
await syncCall ( { contentTypeUid : 'session' } ) ;
54
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
55
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'init' ) ;
56
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'content_type_uid' ) ;
57
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( {
55
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
56
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'init' ) ;
57
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'content_type_uid' ) ;
58
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( {
58
59
init : true ,
59
60
content_type_uid : 'session' ,
60
61
} ) ;
61
62
} ) ;
62
63
it ( 'should have valid locale when a locale is passed as param' , async ( ) => {
63
64
await syncCall ( { locale : LOCALE } ) ;
64
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
65
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'init' ) ;
66
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'locale' ) ;
67
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( {
65
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
66
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'init' ) ;
67
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'locale' ) ;
68
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( {
68
69
init : true ,
69
70
locale : LOCALE ,
70
71
} ) ;
71
72
} ) ;
72
73
it ( 'should have valid date structure and other required params when start_date is passed as param' , async ( ) => {
73
74
await syncCall ( { startDate : '2018-10-22' } ) ;
74
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
75
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'init' ) ;
76
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'start_date' ) ;
77
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( {
75
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
76
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'init' ) ;
77
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'start_date' ) ;
78
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( {
78
79
init : true ,
79
80
start_date : '2018-10-22' ,
80
81
} ) ;
81
82
} ) ;
82
83
it ( 'should have valid publish_type when type is passed as param' , async ( ) => {
83
84
await syncCall ( { type : [ PublishType . ENTRY_PUBLISHED ] } ) ;
84
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
85
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'init' ) ;
86
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'type' ) ;
87
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( {
85
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
86
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'init' ) ;
87
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'type' ) ;
88
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( {
88
89
init : true ,
89
90
type : 'entry_published' ,
90
91
} ) ;
@@ -95,10 +96,10 @@ describe('Synchronization function', () => {
95
96
startDate : '2018-10-22' ,
96
97
type : [ PublishType . ENTRY_PUBLISHED , PublishType . CONTENT_TYPE_DELETED ] ,
97
98
} ) ;
98
- expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( '/sync' ) ;
99
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'init' ) ;
100
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toHaveProperty ( 'type' ) ;
101
- expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params . params ) . toEqual ( {
99
+ expect ( getDataMock . mock . calls [ 0 ] [ 1 ] ) . toBe ( SYNC_URL ) ;
100
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'init' ) ;
101
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toHaveProperty ( 'type' ) ;
102
+ expect ( getDataMock . mock . calls [ 0 ] [ 2 ] . params ) . toEqual ( {
102
103
init : true ,
103
104
start_date : '2018-10-22' ,
104
105
locale : 'en-us' ,
0 commit comments