Changeset: 0503a62a1ce6 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0503a62a1ce6
Modified Files:
        clients/nodejs/Tests/nodetest.js
Branch: default
Log Message:

Node.JS connector: test case


diffs (122 lines):

diff --git a/clients/nodejs/Tests/nodetest.js b/clients/nodejs/Tests/nodetest.js
--- a/clients/nodejs/Tests/nodetest.js
+++ b/clients/nodejs/Tests/nodetest.js
@@ -5,24 +5,21 @@ var dbport = parseInt(process.argv[2]);
 var dbname = process.argv[3];
 
 /* lets first check some failing connection attempts */
-monetdb.connect({host:'veryinvalidhostnamethathopefullyresolvesnowhere'}, 
function(resp) {
-       assert.equal(false,resp.success);
-       assert(resp.message.trim().length > 0);
+monetdb.connect({host:'veryinvalidhostnamethathopefullyresolvesnowhere'}, 
function(err) {
+       assert(err);
 });
 
-monetdb.connect({dbname:'nonexist', port:dbport}, function(resp) {
-       assert.equal(false,resp.success);
-       assert(resp.message.trim().length > 0);
+monetdb.connect({dbname:'nonexist', port:dbport}, function(err) {
+       assert(err);
 });
 
-monetdb.connect({dbname:dbname, user:'nonexist', port:dbport}, function(resp) {
-       assert.equal(false,resp.success);
-       assert(resp.message.trim().length > 0);
+monetdb.connect({dbname:dbname, user:'nonexist', port:dbport}, function(err) {
+       assert(err);
 });
 
 /* now actually connect */
-var conn = monetdb.connect({dbname:dbname, port:dbport}, function(resp) {
-       assert.equal(true,resp.success);
+var conn = monetdb.connect({dbname:dbname, port:dbport, debug: false}, 
function(err) {
+       assert.equal(null, err);
 });
 
 
@@ -32,8 +29,8 @@ conn.query('start transaction');
 conn.query('create table foo(a int, b float, c clob)');
 conn.query("insert into foo values 
(42,4.2,'42'),(43,4.3,'43'),(44,4.4,'44'),(45,4.5,'45')");
 
-conn.query('select * from foo', function(res) {
-       assert.equal(true, res.success);
+conn.query('select * from foo', function(err, res) {
+       assert.equal(null, err);
 
        assert.equal('table', res.type);
        assert.equal(4, res.rows);
@@ -53,7 +50,7 @@ conn.query('select * from foo', function
 
 conn.query('delete from foo; drop table foo; rollback');
 
-/* query that will force multi-block operations */
+/* query that will stress multi-block operations */
 function rep(str,n) {
        ret = '';
        for (var i = 0; i< n; i++) {
@@ -61,26 +58,52 @@ function rep(str,n) {
        }
        return ret;
 }
-var longstr = rep('ABCDEFGHIJKLMNOP', 10000);
 
-conn.query("SELECT '"+longstr+"'", function(res) {
-       assert.equal(true, res.success);
+var longstr = rep('ABCDEFGHIJKLMNOP', 100000);
+conn.query("SELECT '" + longstr + "'", function(err, res) {
+       assert.equal(null, err);
        assert.equal(longstr,res.data[0][0]);
 });
 
 /* failing query */
-conn.query('MEHR BIER', function(res) {
-       assert.equal(false,res.success);
-       assert(res.message.trim().length > 0);
+conn.query('MEHR BIER', function(err, res) {
+       assert(err);
 });
 
-/* prepared statement */
-conn.prepare('SELECT id from tables where name=? and type=? and readonly=?', 
function(r){
-       assert.equal(true,r.success);
-       r.exec('connections', 0, false, function(r) {
-               assert.equal(true,r.success);
-               assert(r.rows > 0);
-               conn.close();
+/* prepared statements */
+conn.query('MEHR BIER',
+       ['connections', 0, false], function(err, res) {
+               assert(err);
+}); 
+
+
+/* fire-and-forget query with parameters */
+conn.query('SELECT id from tables where name=? and type=? and readonly=?',
+       ['connections', 0, false], function(err, res) {
+               assert.equal(null, err);
+               assert(res.rows > 0);
+
+}); 
+
+/* prepared statements can also be re-used  */
+conn.prepare('SELECT id from tables where name=? and type=? and readonly=?', 
function(err, res){
+       assert.equal(null, err);
+
+       /* parameters can also be given as array */
+       res.exec(['connections', 0, false], function(err, res) {
+               assert.equal(null, err);
+               assert(res.rows > 0);
        });
+
+       /* this fails due to missing param */
+       res.exec([0, false], function(err, res) {
+               assert(err);
+       });
+
+       res.release();
 });
 
+conn.close();
+
+
+
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to