@@ -20,77 +20,88 @@ const {Client} = pg;
2020t . test ( 'open connection and retrieves standard pg tables' , async t => {
2121 const connector = new Connector ( ) ;
2222 const clientOpts = await connector . getOptions ( {
23- instanceConnectionName : process . env . POSTGRES_CONNECTION_NAME ,
24- ipType : 'PUBLIC' ,
25- authType : 'PASSWORD' ,
23+ instanceConnectionName : String ( process . env . POSTGRES_CONNECTION_NAME ) ,
2624 } ) ;
2725 const client = new Client ( {
2826 ...clientOpts ,
29- user : process . env . POSTGRES_USER ,
30- password : process . env . POSTGRES_PASS ,
31- database : process . env . POSTGRES_DB ,
27+ user : String ( process . env . POSTGRES_USER ) ,
28+ password : String ( process . env . POSTGRES_PASS ) ,
29+ database : String ( process . env . POSTGRES_DB ) ,
3230 } ) ;
33- client . connect ( ) ;
31+ t . after ( async ( ) => {
32+ try {
33+ await client . end ( ) ;
34+ } catch ( e ) { }
35+ connector . close ( ) ;
36+ } )
37+
38+ await client . connect ( ) ;
3439
3540 const {
3641 rows : [ result ] ,
3742 } = await client . query ( 'SELECT NOW();' ) ;
3843 const returnedDate = result [ 'now' ] ;
3944 t . ok ( returnedDate . getTime ( ) , 'should have valid returned date object' ) ;
4045
41- await client . end ( ) ;
42- connector . close ( ) ;
4346} ) ;
4447
4548t . test ( 'open IAM connection and retrieves standard pg tables' , async t => {
4649 const connector = new Connector ( ) ;
4750 const clientOpts = await connector . getOptions ( {
48- instanceConnectionName : process . env . POSTGRES_CONNECTION_NAME ,
49- ipType : ' PUBLIC' ,
50- authType : ' IAM' ,
51+ instanceConnectionName : String ( process . env . POSTGRES_CONNECTION_NAME ) ,
52+ ipType : " PUBLIC" ,
53+ authType : " IAM" ,
5154 } ) ;
5255 const client = new Client ( {
5356 ...clientOpts ,
54- user : process . env . POSTGRES_IAM_USER ,
55- database : process . env . POSTGRES_DB ,
57+ user : String ( process . env . POSTGRES_USER_IAM_NODE ) ,
58+ database : String ( process . env . POSTGRES_DB ) ,
5659 } ) ;
57- client . connect ( ) ;
60+ t . after ( async ( ) => {
61+ try {
62+ await client . end ( ) ;
63+ } catch ( e ) { }
64+ connector . close ( ) ;
65+ } )
66+ await client . connect ( ) ;
5867
5968 const {
6069 rows : [ result ] ,
6170 } = await client . query ( 'SELECT NOW();' ) ;
6271 const returnedDate = result [ 'now' ] ;
6372 t . ok ( returnedDate . getTime ( ) , 'should have valid returned date object' ) ;
6473
65- await client . end ( ) ;
66- connector . close ( ) ;
6774} ) ;
6875
6976t . test (
7077 'open connection to CAS-based CA instance and retrieves standard pg tables' ,
7178 async t => {
7279 const connector = new Connector ( ) ;
7380 const clientOpts = await connector . getOptions ( {
74- instanceConnectionName : process . env . POSTGRES_CAS_CONNECTION_NAME ,
75- ipType : 'PUBLIC' ,
76- authType : 'PASSWORD' ,
81+ instanceConnectionName : String ( process . env . POSTGRES_CAS_CONNECTION_NAME ) ,
7782 } ) ;
7883 const client = new Client ( {
7984 ...clientOpts ,
80- user : process . env . POSTGRES_USER ,
81- password : process . env . POSTGRES_CAS_PASS ,
82- database : process . env . POSTGRES_DB ,
85+ user : String ( process . env . POSTGRES_USER ) ,
86+ password : String ( process . env . POSTGRES_CAS_PASS ) ,
87+ database : String ( process . env . POSTGRES_DB ) ,
8388 } ) ;
84- client . connect ( ) ;
89+ t . after ( async ( ) => {
90+ try {
91+ await client . end ( ) ;
92+ } catch ( e ) { }
93+ connector . close ( ) ;
94+ } )
95+
96+ await client . connect ( ) ;
8597
8698 const {
8799 rows : [ result ] ,
88100 } = await client . query ( 'SELECT NOW();' ) ;
89101 const returnedDate = result [ 'now' ] ;
90102 t . ok ( returnedDate . getTime ( ) , 'should have valid returned date object' ) ;
91103
92- await client . end ( ) ;
93- connector . close ( ) ;
104+
94105 }
95106) ;
96107
@@ -109,13 +120,86 @@ t.test(
109120 password : String ( process . env . POSTGRES_CUSTOMER_CAS_PASS ) ,
110121 database : String ( process . env . POSTGRES_DB ) ,
111122 } ) ;
112- client . connect ( ) ;
123+ t . after ( async ( ) => {
124+ try {
125+ await client . end ( ) ;
126+ } catch ( e ) { }
127+ connector . close ( ) ;
128+ } )
129+
130+ await client . connect ( ) ;
113131 const {
114132 rows : [ result ] ,
115133 } = await client . query ( 'SELECT NOW();' ) ;
116134 const returnedDate = result [ 'now' ] ;
117135 t . ok ( returnedDate . getTime ( ) , 'should have valid returned date object' ) ;
118- await client . end ( ) ;
119- connector . close ( ) ;
136+
137+ }
138+ ) ;
139+
140+ t . test (
141+ 'open connection to Domain Name instance retrieves standard pg tables' ,
142+ async t => {
143+ const connector = new Connector ( ) ;
144+ const clientOpts = await connector . getOptions ( {
145+ instanceConnectionName : String (
146+ process . env . POSTGRES_CUSTOMER_CAS_DOMAIN_NAME
147+ ) ,
148+ } ) ;
149+ const client = new Client ( {
150+ ...clientOpts ,
151+ user : String ( process . env . POSTGRES_USER ) ,
152+ password : String ( process . env . POSTGRES_CUSTOMER_CAS_PASS ) ,
153+ database : String ( process . env . POSTGRES_DB ) ,
154+ } ) ;
155+ t . after ( async ( ) => {
156+ try {
157+ await client . end ( ) ;
158+ } catch ( e ) { }
159+ connector . close ( ) ;
160+ } )
161+
162+ await client . connect ( ) ;
163+ const {
164+ rows : [ result ] ,
165+ } = await client . query ( 'SELECT NOW();' ) ;
166+ const returnedDate = result [ 'now' ] ;
167+ t . ok ( returnedDate . getTime ( ) , 'should have valid returned date object' ) ;
168+
169+ }
170+ ) ;
171+
172+ t . test (
173+ 'open connection to Domain Name invalid domain name rejects connection' ,
174+ async t => {
175+ const connector = new Connector ( ) ;
176+ const clientOpts = await connector . getOptions ( {
177+ instanceConnectionName : String (
178+ process . env . POSTGRES_CUSTOMER_CAS_INVALID_DOMAIN_NAME
179+ ) ,
180+ } ) ;
181+ const client = new Client ( {
182+ ...clientOpts ,
183+ user : String ( process . env . POSTGRES_USER ) ,
184+ password : String ( process . env . POSTGRES_CUSTOMER_CAS_PASS ) ,
185+ database : String ( process . env . POSTGRES_DB ) ,
186+ } ) ;
187+ t . after ( async ( ) => {
188+ console . log ( "Ending..." )
189+ try {
190+ await client . end ( ) ;
191+ } catch ( e ) { }
192+ connector . close ( ) ;
193+ console . log ( "Ended..." )
194+
195+ } )
196+ try {
197+ await client . connect ( )
198+ t . fail ( "Should throw exception" )
199+ } catch ( e ) {
200+ t . same ( e . code , 'ERR_TLS_CERT_ALTNAME_INVALID' )
201+ } finally {
202+ t . end ( )
203+ }
120204 }
121205) ;
0 commit comments