Fixed UsergridResponse.loadNextPage and UsergridQuery._ql when no query and sort are
diff --git a/lib/query.js b/lib/query.js
index a1d46b4..a819108 100644
--- a/lib/query.js
+++ b/lib/query.js
@@ -104,11 +104,14 @@
// public accessors
Object.defineProperty(self, '_ql', {
get: function() {
+ var ql = 'select * '
if (queryString !== undefined) {
- return queryString
+ ql = queryString
} else {
- return (query.length > 0 || sort !== undefined) ? util.format('select * where %s%s', query || '', sort || '') : ""
+ ql += ((query.length > 0) ? 'where ' + (query || '') : '')
+ ql += ((sort !== undefined) ? sort : '')
}
+ return ql
}
})
diff --git a/lib/response.js b/lib/response.js
index 3cd21e1..fade45c 100644
--- a/lib/response.js
+++ b/lib/response.js
@@ -63,9 +63,10 @@
callback()
}
var client = helpers.client.validate(args)
- var type = _.last(ok(this).getIfExists('metadata.path').split('/'))
- var limit = _.first(ok(this).getIfExists('metadata.params.limit'))
- var query = new UsergridQuery(type).cursor(this.metadata.cursor).limit(limit)
+ var type = _.last(_.get(this,'metadata.path').split('/'))
+ var limit = _.first(_.get(this,'metadata.params.limit'))
+ var ql = _.first(_.get(this,'metadata.params.ql'))
+ var query = new UsergridQuery(type).fromString(ql).cursor(this.metadata.cursor).limit(limit)
return client.GET(query, callback)
}
}
diff --git a/tests/lib/query.test.js b/tests/lib/query.test.js
index d9ecd41..7ec9cb4 100644
--- a/tests/lib/query.test.js
+++ b/tests/lib/query.test.js
@@ -33,9 +33,9 @@
})
describe('_ql', function() {
- it('should be an empty string if query or sort are empty or underfined', function() {
+ it('should select * if query or sort are empty or underfined', function() {
var query = new UsergridQuery('cats')
- query.should.have.property('_ql').equal("")
+ query.should.have.property('_ql').equal('select * ')
})
it('should support complex builder pattern syntax (chained constructor methods)', function() {