1
- var helper = require ( __dirname + '/test-helper' ) ;
2
-
3
- test ( "simple, unnamed prepared statement" , function ( ) {
4
- var client = helper . client ( ) ;
5
-
6
- var query = client . query ( {
7
- text : 'select age from person where name = $1' ,
8
- values : [ 'Brian' ]
9
- } ) ;
10
-
11
- assert . emits ( query , 'row' , function ( row ) {
12
- assert . equal ( row . age , 20 ) ;
13
- } ) ;
14
-
15
- assert . emits ( query , 'end' , function ( ) {
16
- client . end ( ) ;
17
- } ) ;
18
- } ) ;
19
-
20
- test ( "use interval in prepared statement" , function ( ) {
21
- return ;
22
- var client = helper . client ( ) ;
23
-
24
- client . query ( 'SELECT interval \'15 days 2 months 3 years 6:12:05\' as interval' , assert . success ( function ( result ) {
25
- var interval = result . rows [ 0 ] . interval ;
26
-
27
- var query = client . query ( {
28
- text : 'select cast($1 as interval) as interval' ,
29
- values : [ interval ]
30
- } ) ;
31
-
32
- assert . emits ( query , 'row' , function ( row ) {
33
- assert . equal ( row . interval . seconds , 5 ) ;
34
- assert . equal ( row . interval . minutes , 12 ) ;
35
- assert . equal ( row . interval . hours , 6 ) ;
36
- assert . equal ( row . interval . days , 15 ) ;
37
- assert . equal ( row . interval . months , 2 ) ;
38
- assert . equal ( row . interval . years , 3 ) ;
39
- } ) ;
40
-
41
- assert . emits ( query , 'end' , function ( ) {
42
- client . end ( ) ;
43
- } ) ;
44
- } ) ) ;
45
- } ) ;
1
+ var helper = require ( './test-helper' ) ;
2
+ var Query = helper . pg . Query ;
46
3
47
4
test ( "named prepared statement" , function ( ) {
48
5
@@ -52,12 +9,12 @@ test("named prepared statement", function() {
52
9
var queryName = "user by age and like name" ;
53
10
var parseCount = 0 ;
54
11
55
- test ( "first named prepared statement" , function ( ) {
56
- var query = client . query ( {
12
+ test ( "first named prepared statement" , function ( ) {
13
+ var query = client . query ( new Query ( {
57
14
text : 'select name from person where age <= $1 and name LIKE $2' ,
58
15
values : [ 20 , 'Bri%' ] ,
59
16
name : queryName
60
- } ) ;
17
+ } ) ) ;
61
18
62
19
assert . emits ( query , 'row' , function ( row ) {
63
20
assert . equal ( row . name , 'Brian' ) ;
@@ -68,11 +25,11 @@ test("named prepared statement", function() {
68
25
} ) ;
69
26
70
27
test ( "second named prepared statement with same name & text" , function ( ) {
71
- var cachedQuery = client . query ( {
28
+ var cachedQuery = client . query ( new Query ( {
72
29
text : 'select name from person where age <= $1 and name LIKE $2' ,
73
30
name : queryName ,
74
31
values : [ 10 , 'A%' ]
75
- } ) ;
32
+ } ) ) ;
76
33
77
34
assert . emits ( cachedQuery , 'row' , function ( row ) {
78
35
assert . equal ( row . name , 'Aaron' ) ;
@@ -82,28 +39,22 @@ test("named prepared statement", function() {
82
39
} ) ;
83
40
} ) ;
84
41
85
- test ( "with same name, but the query text not even there batman! " , function ( ) {
86
- var q = client . query ( {
42
+ test ( "with same name, but without query text" , function ( ) {
43
+ var q = client . query ( new Query ( {
87
44
name : queryName ,
88
45
values : [ 30 , '%n%' ]
89
- } ) ;
90
-
91
- test ( "gets first row" , function ( ) {
92
- assert . emits ( q , 'row' , function ( row ) {
93
- assert . equal ( row . name , "Aaron" ) ;
46
+ } ) ) ;
94
47
95
- test ( "gets second row" , function ( ) {
96
- assert . emits ( q , 'row' , function ( row ) {
97
- assert . equal ( row . name , "Brian" ) ;
98
- } ) ;
99
- } ) ;
48
+ assert . emits ( q , 'row' , function ( row ) {
49
+ assert . equal ( row . name , "Aaron" ) ;
100
50
51
+ // test second row is emitted as well
52
+ assert . emits ( q , 'row' , function ( row ) {
53
+ assert . equal ( row . name , "Brian" ) ;
101
54
} ) ;
102
55
} ) ;
103
56
104
- assert . emits ( q , 'end' , function ( ) {
105
-
106
- } ) ;
57
+ assert . emits ( q , 'end' , function ( ) { } ) ;
107
58
} ) ;
108
59
} ) ;
109
60
@@ -124,14 +75,9 @@ test("prepared statements on different clients", function() {
124
75
var query = client1 . query ( {
125
76
name : statementName ,
126
77
text : statement1
127
- } ) ;
128
- test ( 'gets right data back' , function ( ) {
129
- assert . emits ( query , 'row' , function ( row ) {
130
- assert . equal ( row . count , 26 ) ;
131
- } ) ;
132
- } ) ;
133
-
134
- assert . emits ( query , 'end' , function ( ) {
78
+ } , ( err , res ) => {
79
+ assert ( ! err ) ;
80
+ assert . equal ( res . rows [ 0 ] . count , 26 ) ;
135
81
if ( client2Finished ) {
136
82
client1 . end ( ) ;
137
83
client2 . end ( ) ;
@@ -143,11 +89,11 @@ test("prepared statements on different clients", function() {
143
89
} ) ;
144
90
145
91
test ( 'client 2 execution' , function ( ) {
146
- var query = client2 . query ( {
92
+ var query = client2 . query ( new Query ( {
147
93
name : statementName ,
148
94
text : statement2 ,
149
95
values : [ 11 ]
150
- } ) ;
96
+ } ) ) ;
151
97
152
98
test ( 'gets right data' , function ( ) {
153
99
assert . emits ( query , 'row' , function ( row ) {
@@ -192,22 +138,22 @@ test('prepared statement', function() {
192
138
} ;
193
139
194
140
test ( 'with small row count' , function ( ) {
195
- var query = client . query ( {
141
+ var query = client . query ( new Query ( {
196
142
name : 'get names' ,
197
143
text : "SELECT name FROM zoom ORDER BY name" ,
198
144
rows : 1
199
- } ) ;
145
+ } ) ) ;
200
146
201
147
checkForResults ( query ) ;
202
148
203
149
} )
204
150
205
151
test ( 'with large row count' , function ( ) {
206
- var query = client . query ( {
152
+ var query = client . query ( new Query ( {
207
153
name : 'get names' ,
208
154
text : 'SELECT name FROM zoom ORDER BY name' ,
209
155
rows : 1000
210
- } )
156
+ } ) )
211
157
checkForResults ( query ) ;
212
158
} )
213
159
0 commit comments