1
1
import { Apify } from '../Apify.node' ;
2
2
import { executeWorkflow } from './utils/executeWorkflow' ;
3
3
import { CredentialsHelper } from './utils/credentialHelper' ;
4
- import { getRunTaskDataByNodeName , getTaskData } from './utils/getNodeResultData' ;
4
+ import { getRunTaskDataByNodeName , getTaskArrayData , getTaskData } from './utils/getNodeResultData' ;
5
5
import getRunWorkflow from './workflows/actor-runs/get-run.workflow.json' ;
6
6
import nock from 'nock' ;
7
7
import getUserRunsListWorkflow from './workflows/actor-runs/get-user-runs-list.workflow.json' ;
@@ -59,7 +59,7 @@ describe('Apify Node', () => {
59
59
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
60
60
61
61
const data = getTaskData ( nodeResult ) ;
62
- expect ( data ) . toEqual ( mockRun ) ;
62
+ expect ( data ) . toEqual ( mockRun . data ) ;
63
63
64
64
expect ( scope . isDone ( ) ) . toBe ( true ) ;
65
65
} ) ;
@@ -72,7 +72,7 @@ describe('Apify Node', () => {
72
72
const scope = nock ( 'https://api.apify.com' )
73
73
. get ( '/v2/actor-runs' )
74
74
. query ( true )
75
- . reply ( 200 , { data : { items : mockRunsList } } ) ;
75
+ . reply ( 200 , mockRunsList ) ;
76
76
77
77
const { waitPromise } = await executeWorkflow ( {
78
78
credentialsHelper,
@@ -85,8 +85,9 @@ describe('Apify Node', () => {
85
85
const [ nodeResult ] = nodeResults ;
86
86
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
87
87
88
- const data = getTaskData ( nodeResult ) ;
89
- expect ( data ) . toEqual ( { runs : mockRunsList } ) ;
88
+ const data = getTaskArrayData ( nodeResult ) ;
89
+ expect ( Array . isArray ( data ) ) . toBe ( true ) ;
90
+ expect ( data ?. map ( ( item ) => item . json ) ) . toEqual ( mockRunsList . data . items ) ;
90
91
91
92
expect ( scope . isDone ( ) ) . toBe ( true ) ;
92
93
} ) ;
@@ -116,7 +117,7 @@ describe('Apify Node', () => {
116
117
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
117
118
118
119
const data = getTaskData ( nodeResult ) ;
119
- expect ( data ) . toEqual ( mockRunTask ) ;
120
+ expect ( data ) . toEqual ( mockRunTask . data ) ;
120
121
121
122
expect ( scope . isDone ( ) ) . toBe ( true ) ;
122
123
} ) ;
@@ -126,7 +127,7 @@ describe('Apify Node', () => {
126
127
describe ( 'actors' , ( ) => {
127
128
describe ( 'get-last-run' , ( ) => {
128
129
it ( 'should run the get-last-run workflow' , async ( ) => {
129
- const mockLastRun = fixtures . getLastRunResult ( ) [ 0 ] . data ;
130
+ const mockLastRun = fixtures . getLastRunResult ( ) ;
130
131
131
132
const scope = nock ( 'https://api.apify.com' )
132
133
. get ( '/v2/acts/nFJndFXA5zjCTuudP/runs/last' )
@@ -145,14 +146,14 @@ describe('Apify Node', () => {
145
146
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
146
147
147
148
const data = getTaskData ( nodeResult ) ;
148
- expect ( data ) . toEqual ( mockLastRun ) ;
149
+ expect ( data ) . toEqual ( mockLastRun . data ) ;
149
150
150
151
expect ( scope . isDone ( ) ) . toBe ( true ) ;
151
152
} ) ;
152
153
} ) ;
153
154
describe ( 'run-actor' , ( ) => {
154
155
it ( 'should run the run-actor workflow' , async ( ) => {
155
- const mockRunActor = fixtures . runActorResult ( ) [ 0 ] . data ;
156
+ const mockRunActor = fixtures . runActorResult ( ) ;
156
157
157
158
const scope = nock ( 'https://api.apify.com' )
158
159
. get ( '/v2/acts/nFJndFXA5zjCTuudP' )
@@ -161,7 +162,7 @@ describe('Apify Node', () => {
161
162
. reply ( 200 , { data : fixtures . getBuildResult ( ) } )
162
163
. post ( '/v2/acts/nFJndFXA5zjCTuudP/runs' )
163
164
. query ( { waitForFinish : 60 } )
164
- . reply ( 200 , fixtures . runActorResult ( ) [ 0 ] . data ) ;
165
+ . reply ( 200 , mockRunActor ) ;
165
166
166
167
const runActorWorkflow = require ( './workflows/actors/run-actor.workflow.json' ) ;
167
168
const { waitPromise } = await executeWorkflow ( {
@@ -176,7 +177,7 @@ describe('Apify Node', () => {
176
177
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
177
178
178
179
const data = getTaskData ( nodeResult ) ;
179
- expect ( data ) . toEqual ( mockRunActor ) ;
180
+ expect ( data ) . toEqual ( mockRunActor . data ) ;
180
181
181
182
expect ( scope . isDone ( ) ) . toBe ( true ) ;
182
183
} ) ;
@@ -194,7 +195,7 @@ describe('Apify Node', () => {
194
195
. reply ( 200 , mockRunResponse )
195
196
. get ( `/v2/datasets/${ datasetId } /items` )
196
197
. query ( { format : 'json' } )
197
- . reply ( 200 , { items : mockItems } ) ;
198
+ . reply ( 200 , mockItems ) ;
198
199
199
200
const scrapeSingleUrlWorkflow = require ( './workflows/actors/scrape-single-url.workflow.json' ) ;
200
201
const { waitPromise } = await executeWorkflow ( {
@@ -209,7 +210,8 @@ describe('Apify Node', () => {
209
210
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
210
211
211
212
const data = getTaskData ( nodeResult ) ;
212
- expect ( data ) . toEqual ( { items : mockItems } ) ;
213
+ expect ( typeof data ) . toBe ( 'object' ) ;
214
+ expect ( data ) . toEqual ( mockItems [ 0 ] ) ;
213
215
214
216
expect ( scope . isDone ( ) ) . toBe ( true ) ;
215
217
} ) ;
@@ -225,7 +227,7 @@ describe('Apify Node', () => {
225
227
const scope = nock ( 'https://api.apify.com' )
226
228
. get ( `/v2/datasets/${ datasetId } /items` )
227
229
. query ( true )
228
- . reply ( 200 , { items : mockItems } ) ;
230
+ . reply ( 200 , mockItems ) ;
229
231
230
232
const getItemsWorkflow = require ( './workflows/datasets/get-items.workflow.json' ) ;
231
233
const { waitPromise } = await executeWorkflow ( {
@@ -239,8 +241,9 @@ describe('Apify Node', () => {
239
241
const [ nodeResult ] = nodeResults ;
240
242
expect ( nodeResult . executionStatus ) . toBe ( 'success' ) ;
241
243
242
- const data = getTaskData ( nodeResult ) ;
243
- expect ( data ) . toEqual ( { items : mockItems } ) ;
244
+ const data = getTaskArrayData ( nodeResult ) ;
245
+ expect ( Array . isArray ( data ) ) . toBe ( true ) ;
246
+ expect ( data ?. map ( ( item ) => item . json ) ) . toEqual ( mockItems ) ;
244
247
245
248
expect ( scope . isDone ( ) ) . toBe ( true ) ;
246
249
} ) ;
0 commit comments