Rename formatResult, don't assume it's an array

This commit is contained in:
Ben Gotow 2016-01-22 11:45:36 -08:00
parent 6b144b867d
commit d842428880
4 changed files with 8 additions and 7 deletions

View file

@ -101,7 +101,7 @@ describe "ModelQuery", ->
q.where({accountId: 'abcd'}).count() q.where({accountId: 'abcd'}).count()
raw = [{count:"12"}] raw = [{count:"12"}]
expect(q.formatResultObjects(q.inflateResult(raw))).toBe(12) expect(q.formatResult(q.inflateResult(raw))).toBe(12)
describe "sql", -> describe "sql", ->
beforeEach -> beforeEach ->

View file

@ -178,7 +178,7 @@ class QuerySubscription
if @_options.asResultSet if @_options.asResultSet
@_lastResult = @_set.immutableClone() @_lastResult = @_set.immutableClone()
else else
@_lastResult = @_query.formatResultObjects(@_set.models()) @_lastResult = @_query.formatResult(@_set.models())
@_callbacks.forEach (callback) => @_callbacks.forEach (callback) =>
callback(@_lastResult) callback(@_lastResult)

View file

@ -231,9 +231,10 @@ class ModelQuery
throw new Error("Query could not parse the database result. Query: #{@sql()}, Error: #{jsonError.toString()}") throw new Error("Query could not parse the database result. Query: #{@sql()}, Error: #{jsonError.toString()}")
return objects return objects
formatResultObjects: (objects) -> formatResult: (inflated) ->
return objects[0] if @_returnOne return inflated[0] if @_returnOne
return [].concat(objects) return inflated if @_count
return [].concat(inflated)
# Query SQL Building # Query SQL Building

View file

@ -31,7 +31,7 @@ COMMIT = 'COMMIT'
TXINDEX = 0 TXINDEX = 0
class JSONBlobQuery extends ModelQuery class JSONBlobQuery extends ModelQuery
formatResultObjects: (objects) => formatResult: (objects) =>
return objects[0]?.json || null return objects[0]?.json || null
@ -402,7 +402,7 @@ class DatabaseStore extends NylasStore
run: (modelQuery, options = {format: true}) => run: (modelQuery, options = {format: true}) =>
@_query(modelQuery.sql(), []).then (result) => @_query(modelQuery.sql(), []).then (result) =>
result = modelQuery.inflateResult(result) result = modelQuery.inflateResult(result)
result = modelQuery.formatResultObjects(result) unless options.format is false result = modelQuery.formatResult(result) unless options.format is false
Promise.resolve(result) Promise.resolve(result)
findJSONBlob: (id) -> findJSONBlob: (id) ->