[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

libmongodb-perl: FTBFS: Failed tests -> no big deal



Hello

I've looked at the test result that lead to libmongodb-perl FTBS:

> #   Failed test 'js err'
> #   at t/db.t line 52.
> #                   'exception: SyntaxError: Unexpected string'
> #     doesn't match '(?^:(?:compile|execution) failed)'
> # Looks like you failed 1 test of 10.

This error is triggered by:

 my $err = $db->eval('function(x) { xreturn "hello, "+x; }', ["world"]); 
 like($err, qr/(?:compile|execution) failed/, 'js err');

The javascript code fed to eval is indeed bogus. The error message now returned by mongodb 
contains information more precise than before (which is a good thing).

This new error string does match the behavior of mongo client [1]:

$ mongo
> db.runCommand( { eval: function(x) { return "hello, "+x; }, args: [ 'world' ] } ); 
{ "retval" : "hello, world", "ok" : 1 }
> db.runCommand( { eval: function(x) { xreturn "hello, "+x; }, args: [ 'world' ] } );
Wed Apr  9 20:54:00.905 SyntaxError: Unexpected string

So I think we can safely patch the test to avoid removal of libmongodb-perl from testing.

I'll do this in the next few days unless gregoa beats me to it ;-)

All the best

[1] explanation on the syntax:
    http://docs.mongodb.org/manual/reference/command/eval/#dbcmd.eval

-- 
 https://github.com/dod38fr/   -o- http://search.cpan.org/~ddumont/
http://ddumont.wordpress.com/  -o-   irc: dod at irc.debian.org


Reply to: