42 Commits

Author SHA1 Message Date
Brian C
8798e50ad3 Re-enable eslint with standard format (#1367)
* Work on converting lib to standard

* Finish updating lib

* Finish linting lib

* Format test files

* Add .eslintrc with standard format

* Supply full path to eslint bin

* Move lint command to package.json

* Add eslint as dev dependency
2017-07-15 12:05:58 -05:00
Brian Carlson
27450d07e6 Throw on reconnect attempt
Clients are not reusable.  This changes the client to raise errors whenever you try to reconnect a client that's already been used.  They're cheap to create: just instantiate a new one (or use the pool) 😉.

Closes #1352
2017-07-15 11:02:09 -05:00
Brian M. Carlson
bd87cddc72 Fix connection / disconnection issues 2017-06-18 16:48:14 -05:00
Brian M. Carlson
0f1f8626cf Add use strict to every file 2017-06-18 16:48:14 -05:00
Brian M. Carlson
1bc1758579 Remove deprecated methods 2017-06-18 16:48:14 -05:00
Brian M. Carlson
b8c2bebcac Fix more tests to use query instance 2017-06-15 10:32:38 -05:00
Brian C
aeb0c759f5 Remove fallbacks for unsupported Node versions (#1304) (#1313)
* Add client connectionString tests (#1310)

* Remove redundant tests

* Add client connectionString test

Add test to ensure { connectionString } is respected as an argument to the client constructor

* Add test for connection string property

Also fixed some legacy require statements.

* Normalize native error properties

Map native error properties to the same property names we use for errors from the JS driver.

Fixes #972
Fixes #938
2017-06-08 21:53:47 -05:00
Charmander
934ca3af16 Remove fallbacks for unsupported Node versions (#1304)
* Remove unsupported Node versions 0.10 and 0.12 from CI

* Replace deprecated Buffer constructor with .from/.alloc

* Remove Promise polyfill

* Make use of Object.assign

* Remove checks for versions of Node earlier than 4

* Remove Buffer#indexOf fallback for Node 0.10
2017-06-07 22:45:32 -05:00
Raul Ochoa
4cd56cc4f8 Make pool name consistent on missing config params (#1279)
* Going red: using a config object creates two pools when missing some params

It should only create a pool in a consistent way, even if some params
are not provided in the first place.

* Delay the pool name generation to make it consistent between calls

* Don't fallback to empty object as config is already defined
2017-05-24 09:04:50 -05:00
brianc
892d02ca1c Fix typo 2016-07-19 10:17:40 -05:00
Brian C
b1b2801c71 Add onFailure to query#then (#1082)
The promise adapter I had implemented wasn't spec compliant: it didn't accept both `onSuccess` and `onFailure` in the call to `query#then`.  This subtly broke yield & async/await because they both rely on `onError` being passed into `Promise#then`.  The pool was also not returning the promise after a client was acquired, which broke awaiting on `pool.connect` - this is also fixed now.
2016-07-19 10:16:48 -05:00
Brian C
812277f99f Fix native constructor and pool exports (#1061) 2016-06-24 00:52:28 -05:00
Brian C
796a44f54f Remove internal pool (#1049)
* Initial work on removing internal pool

* Port backwards-compabible properties

* Cleanup test execution & makefile cruft

* Attempt to fix flakey error test
2016-06-21 09:53:09 -05:00
Brian M. Carlson
dd2e71ce97 Fix max connection tests 2014-10-07 00:47:35 -04:00
Brian M. Carlson
c5d4207aac Fix a few more failing tests 2014-09-23 18:57:20 -04:00
Brian M. Carlson
e99f8d59a6 Remove test skip 2014-09-14 21:14:24 -04:00
Brian M. Carlson
d2bb532d73 Make moar tests pass 2014-09-14 21:11:51 -04:00
Brian M. Carlson
667c528ea6 Work towards more tests passing 2014-09-14 01:23:02 -04:00
Marek
47b0aafa6d Make sure 'end' is emitted even if no connection has ever happened 2014-05-13 12:57:01 +01:00
Ricky Ng-Adam
0882c8da02 from ended to end 2014-04-18 23:30:45 +08:00
Ricky Ng-Adam
382d6d66f9 emit event when all pool are actually destroyed 2014-04-17 16:18:49 +08:00
Rod Vagg
6cb167112e convert to NAN for Node 0.8->0.11+ support 2013-12-06 15:30:28 +11:00
Brian Carlson
c6a235fb5d Fix race condition in test 2013-10-02 22:39:31 -05:00
Brian Carlson
343caefb75 Fix race in error handling test 2013-07-23 09:51:48 -05:00
brianc
f5f5320b15 fix tests on older versions of postgres 2013-04-17 09:54:16 -05:00
bmc
f55a0cd1b4 fix tests for postgres >= v9.2.0 2013-04-17 09:26:31 -05:00
brianc
aadb2917cc fix broken test 2013-03-07 16:09:40 -06:00
brianc
9c7a33caca remove 2 parameter pg.connect function 2013-03-07 15:57:00 -06:00
bmc
5c95886749 clear deprecation warning on client error - fix test race 2013-02-21 14:49:26 -06:00
bmc
cc84799c7a integrate new pool into existing codebase 2013-02-20 16:08:48 -06:00
Alexander Sulfrian
6b032c466b added test-binary target
integration tests could now be started in binary mode
some tests are executed in text mode anyway, they are currently not
compatible with binary mode or prepared statements at all
(f.e. multiple statements in one query)
2011-11-22 05:01:00 +01:00
Alexander Sulfrian
f698ed4459 use config dict in all test
instead of the connection string use the config dict in all tests to
be able to specify things like binary mode
2011-11-22 05:00:54 +01:00
brianc
afe4382c63 change assert.length to assert.lengthIs 2011-10-10 19:21:06 -05:00
brianc
1731def7dd assert against correct client object 2011-09-13 18:18:44 -05:00
brianc
2ddc553ee4 pg object emit error event on idle pooled client errors 2011-08-29 02:35:46 -05:00
brianc
c16c7f619d configurable idle timeout on pooled clients 2011-08-11 21:52:29 -05:00
brianc
a7fbe95e72 make pg.connect config/conString argument optional 2011-08-11 19:32:57 -05:00
brianc
6c7b908367 test for pool name caching 2011-05-02 00:16:07 -05:00
Brian Carlson
26b28a7565 added test for ending multiple connection pools at once 2010-12-14 19:30:32 -06:00
Brian Carlson
fb463923d8 test refactoring 2010-12-14 19:23:01 -06:00
Brian Carlson
b3e56afea2 initial working connection pool implementation & tests 2010-12-13 17:21:40 -06:00
Brian Carlson
ab13d0c1eb initial crack at connection pooling -- still dirty 2010-12-10 17:32:34 -06:00