@@ -63,35 +63,39 @@ describe('bigquery:query', function () {
63
63
64
64
it ( 'should return results' , function ( ) {
65
65
var example = getSample ( ) ;
66
- example . program . syncQuery ( query ,
67
- function ( err , data ) {
68
- assert . ifError ( err ) ;
69
- assert ( example . mocks . bigquery . query . called ) ;
70
- assert . deepEqual ( data , example . mocks . natality ) ;
71
- assert ( console . log . calledWith (
72
- 'SyncQuery: found %d rows!' ,
73
- data . length
74
- ) ) ;
75
- }
76
- ) ;
66
+ var callback = sinon . stub ( ) ;
67
+
68
+ example . program . syncQuery ( query , callback ) ;
69
+
70
+ assert . ifError ( callback . firstCall . args [ 0 ] ) ;
71
+ assert ( example . mocks . bigquery . query . called ) ;
72
+ assert . deepEqual ( callback . firstCall . args [ 1 ] , example . mocks . natality ) ;
73
+ assert ( console . log . calledWith (
74
+ 'SyncQuery: found %d rows!' ,
75
+ callback . firstCall . args [ 1 ] . length
76
+ ) ) ;
77
77
} ) ;
78
78
79
79
it ( 'should require a query' , function ( ) {
80
80
var example = getSample ( ) ;
81
- example . program . syncQuery ( null , function ( err , data ) {
82
- assert . deepEqual ( err , Error ( '"query" is required!' ) ) ;
83
- assert . equal ( data , undefined ) ;
84
- } ) ;
81
+ var callback = sinon . stub ( ) ;
82
+
83
+ example . program . syncQuery ( null , callback ) ;
84
+
85
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , new Error ( '"query" is required!' ) ) ;
86
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
85
87
} ) ;
86
88
87
89
it ( 'should handle error' , function ( ) {
88
90
var error = new Error ( 'error' ) ;
89
91
var example = getSample ( ) ;
92
+ var callback = sinon . stub ( ) ;
90
93
example . mocks . bigquery . query = sinon . stub ( ) . callsArgWith ( 1 , error ) ;
91
- example . program . syncQuery ( query , function ( err , data ) {
92
- assert . deepEqual ( err , error ) ;
93
- assert . equal ( data , undefined ) ;
94
- } ) ;
94
+
95
+ example . program . syncQuery ( query , callback ) ;
96
+
97
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , error ) ;
98
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
95
99
} ) ;
96
100
} ) ;
97
101
@@ -100,106 +104,119 @@ describe('bigquery:query', function () {
100
104
101
105
it ( 'should submit a job' , function ( ) {
102
106
var example = getSample ( ) ;
103
- example . program . asyncQuery ( query ,
104
- function ( err , job ) {
105
- assert . ifError ( err ) ;
106
- assert ( example . mocks . bigquery . startQuery . called ) ;
107
- assert . deepEqual ( example . mocks . job , job ) ;
108
- assert ( console . log . calledWith (
109
- 'AsyncQuery: submitted job %s!' , example . jobId
110
- ) ) ;
111
- }
112
- ) ;
107
+ var callback = sinon . stub ( ) ;
108
+
109
+ example . program . asyncQuery ( query , callback ) ;
110
+
111
+ assert . ifError ( callback . firstCall . args [ 0 ] ) ;
112
+ assert ( example . mocks . bigquery . startQuery . called ) ;
113
+ assert . deepEqual ( callback . firstCall . args [ 1 ] , example . mocks . job ) ;
114
+ assert ( console . log . calledWith (
115
+ 'AsyncQuery: submitted job %s!' , example . jobId
116
+ ) ) ;
113
117
} ) ;
114
118
115
119
it ( 'should require a query' , function ( ) {
116
120
var example = getSample ( ) ;
117
- example . program . asyncQuery ( null , function ( err , job ) {
118
- assert . deepEqual ( err , Error ( '"query" is required!' ) ) ;
119
- assert . equal ( job , undefined ) ;
120
- } ) ;
121
+ var callback = sinon . stub ( ) ;
122
+
123
+ example . program . asyncQuery ( null , callback ) ;
124
+
125
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , new Error ( '"query" is required!' ) ) ;
126
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
121
127
} ) ;
122
128
123
129
it ( 'should handle error' , function ( ) {
124
130
var error = new Error ( 'error' ) ;
125
131
var example = getSample ( ) ;
132
+ var callback = sinon . stub ( ) ;
126
133
example . mocks . bigquery . startQuery = sinon . stub ( ) . callsArgWith ( 1 , error ) ;
127
- example . program . asyncQuery ( query , function ( err , job ) {
128
- assert . deepEqual ( err , error ) ;
129
- assert . equal ( job , undefined ) ;
130
- } ) ;
134
+
135
+ example . program . asyncQuery ( query , callback ) ;
136
+
137
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , error ) ;
138
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
131
139
} ) ;
132
140
} ) ;
133
141
134
142
describe ( 'asyncPoll' , function ( ) {
135
143
it ( 'should get the results of a job given its ID' , function ( ) {
136
144
var example = getSample ( ) ;
145
+ var callback = sinon . stub ( ) ;
137
146
example . mocks . bigquery . job = sinon . stub ( ) . returns ( example . mocks . job ) ;
138
- example . program . asyncPoll ( example . jobId ,
139
- function ( err , rows ) {
140
- assert . ifError ( err ) ;
141
- assert ( example . mocks . job . getQueryResults . called ) ;
142
- assert ( console . log . calledWith (
143
- 'AsyncQuery: polled job %s; got %d rows!' ,
144
- example . jobId ,
145
- example . mocks . natality . length
146
- ) ) ;
147
- }
148
- ) ;
147
+
148
+ example . program . asyncPoll ( example . jobId , callback ) ;
149
+
150
+ assert . ifError ( callback . firstCall . args [ 0 ] ) ;
151
+ assert ( example . mocks . job . getQueryResults . called ) ;
152
+ assert ( console . log . calledWith (
153
+ 'AsyncQuery: polled job %s; got %d rows!' ,
154
+ example . jobId ,
155
+ example . mocks . natality . length
156
+ ) ) ;
149
157
} ) ;
150
158
151
159
it ( 'should report the status of a job' , function ( ) {
152
160
var example = getSample ( ) ;
153
- example . program . asyncPoll ( example . jobId , function ( err , rows ) {
154
- assert . ifError ( err ) ;
155
- assert ( example . mocks . job . getMetadata . called ) ;
156
- assert ( console . log . calledWith (
157
- 'Job status: %s' ,
158
- example . mocks . metadata . status . state
159
- ) ) ;
160
- } ) ;
161
+ var callback = sinon . stub ( ) ;
162
+
163
+ example . program . asyncPoll ( example . jobId , callback ) ;
164
+
165
+ assert . ifError ( callback . firstCall . args [ 0 ] ) ;
166
+ assert ( example . mocks . job . getMetadata . called ) ;
167
+ assert ( console . log . calledWith (
168
+ 'Job status: %s' ,
169
+ example . mocks . metadata . status . state
170
+ ) ) ;
161
171
} ) ;
162
172
163
173
it ( 'should check whether a job is finished' , function ( ) {
164
174
var example = getSample ( ) ;
175
+ var callback = sinon . stub ( ) ;
165
176
166
177
var pendingState = { status : { state : 'PENDING' } } ;
167
178
example . mocks . job . getMetadata = sinon . stub ( ) . callsArgWith ( 0 , null , pendingState ) ;
168
- example . program . asyncPoll ( example . jobId , function ( err , rows ) {
169
- assert . deepEqual ( err , Error ( 'Job %s is not done' , example . jobId ) ) ;
170
- assert ( console . log . calledWith ( 'Job status: %s' , pendingState . status . state ) ) ;
171
- assert ( example . mocks . job . getMetadata . called ) ;
172
- assert . equal ( example . mocks . job . getQueryResults . called , false ) ;
173
- assert . equal ( rows , undefined ) ;
174
- } ) ;
179
+
180
+ example . program . asyncPoll ( example . jobId , callback ) ;
181
+
182
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , Error ( 'Job %s is not done' , example . jobId ) ) ;
183
+ assert ( console . log . calledWith ( 'Job status: %s' , pendingState . status . state ) ) ;
184
+ assert ( example . mocks . job . getMetadata . called ) ;
185
+ assert . equal ( example . mocks . job . getQueryResults . called , false ) ;
186
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
175
187
176
188
var doneState = { status : { state : 'DONE' } } ;
177
189
example . mocks . job . getMetadata = sinon . stub ( ) . callsArgWith ( 0 , null , doneState ) ;
178
- example . program . asyncPoll ( example . jobId , function ( err , rows ) {
179
- assert . ifError ( err ) ;
180
- assert ( console . log . calledWith ( 'Job status: %s' , doneState . status . state ) ) ;
181
- assert ( example . mocks . job . getMetadata . called ) ;
182
- assert ( example . mocks . job . getQueryResults . called ) ;
183
- assert . equal ( rows , example . mocks . natality ) ;
184
- } ) ;
190
+
191
+ example . program . asyncPoll ( example . jobId , callback ) ;
192
+
193
+ assert . ifError ( callback . secondCall . args [ 0 ] ) ;
194
+ assert ( console . log . calledWith ( 'Job status: %s' , doneState . status . state ) ) ;
195
+ assert ( example . mocks . job . getMetadata . called ) ;
196
+ assert ( example . mocks . job . getQueryResults . called ) ;
197
+ assert . equal ( callback . secondCall . args [ 1 ] , example . mocks . natality ) ;
185
198
} ) ;
186
199
187
200
it ( 'should require a job ID' , function ( ) {
188
201
var example = getSample ( ) ;
189
- example . program . asyncPoll ( null , function ( err , rows ) {
190
- assert . deepEqual ( err , Error ( '"jobId" is required!' ) ) ;
191
- assert . equal ( rows , undefined ) ;
192
- } ) ;
202
+ var callback = sinon . stub ( ) ;
203
+
204
+ example . program . asyncPoll ( null , callback ) ;
205
+
206
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , Error ( '"jobId" is required!' ) ) ;
207
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
193
208
} ) ;
194
209
195
210
it ( 'should handle error' , function ( ) {
196
211
var error = new Error ( 'error' ) ;
197
212
var example = getSample ( ) ;
213
+ var callback = sinon . stub ( ) ;
198
214
example . mocks . job . getQueryResults = sinon . stub ( ) . callsArgWith ( 0 , error ) ;
199
- example . program . asyncPoll ( example . jobId , function ( err , rows ) {
200
- assert . deepEqual ( err , error ) ;
201
- assert . equal ( rows , undefined ) ;
202
- } ) ;
215
+
216
+ example . program . asyncPoll ( example . jobId , callback ) ;
217
+
218
+ assert . deepEqual ( callback . firstCall . args [ 0 ] , error ) ;
219
+ assert . equal ( callback . firstCall . args [ 1 ] , undefined ) ;
203
220
} ) ;
204
221
} ) ;
205
222
0 commit comments