不要怂,就是干,撸起袖子干!

You need to sign in or sign up before continuing.
Commit d37cdbbd by Sascha Depold

added toSql on the node-sql instances

1 parent a38cea6d
Showing with 27 additions and 1 deletions
...@@ -68,7 +68,11 @@ module.exports = (function() { ...@@ -68,7 +68,11 @@ module.exports = (function() {
;(function(methodName) { ;(function(methodName) {
DAOFactory.prototype[methodName] = function() { DAOFactory.prototype[methodName] = function() {
var dataset = this.dataset() var dataset = this.dataset()
return dataset[methodName].apply(dataset, arguments) , result = dataset[methodName].apply(dataset, arguments)
result.toSql = function(){ return result.toQuery().text }
return result
} }
})(methodName) })(methodName)
} }
......
...@@ -2498,5 +2498,27 @@ describe(Helpers.getTestDialectTeaser("DAOFactory"), function() { ...@@ -2498,5 +2498,27 @@ describe(Helpers.getTestDialectTeaser("DAOFactory"), function() {
expect(query1.text).toEqual(query2.text) expect(query1.text).toEqual(query2.text)
}) })
}) })
describe("toSql", function() {
it("transforms the node-sql instance into a proper sql string", function() {
var sql = this.User.select("username").toSql()
var sqlMap = {
postgres: 'SELECT username FROM "users"',
mysql: 'SELECT `username` FROM `users`',
sqlite: 'SELECT username FROM "users"'
}
expect(sql).toEqual(sqlMap[dialect])
})
it("transforms node-sql instances with chaining into a proper sql string", function() {
var sql = this.User.select("username").select("firstName").group("username").toSql()
var sqlMap = {
postgres: 'SELECT username, firstName FROM "users" GROUP BY username',
mysql: 'SELECT `username`, `firstName` FROM `users` GROUP BY username',
sqlite: 'SELECT username, firstName FROM "users" GROUP BY username'
}
expect(sql).toEqual(sqlMap[dialect])
})
})
}) })
}) })
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!