2021-03-16 14:54:39 +01:00
|
|
|
const sqlServer = require("mssql")
|
|
|
|
const MSSQLIntegration = require("../microsoftSqlServer")
|
|
|
|
jest.mock("mssql")
|
|
|
|
|
|
|
|
class TestConfiguration {
|
|
|
|
constructor(config = {}) {
|
|
|
|
this.integration = new MSSQLIntegration.integration(config)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
describe("MS SQL Server Integration", () => {
|
2021-11-09 12:16:12 +01:00
|
|
|
let config
|
2021-03-16 14:54:39 +01:00
|
|
|
|
2021-11-09 12:16:12 +01:00
|
|
|
beforeEach(async () => {
|
2021-03-16 14:54:39 +01:00
|
|
|
config = new TestConfiguration()
|
|
|
|
})
|
|
|
|
|
2021-11-09 12:16:12 +01:00
|
|
|
describe("check sql used", () => {
|
|
|
|
beforeEach(async () => {
|
|
|
|
await config.integration.connect()
|
|
|
|
})
|
|
|
|
|
|
|
|
it("calls the create method with the correct params", async () => {
|
|
|
|
const sql = "insert into users (name, age) values ('Joe', 123);"
|
|
|
|
const response = await config.integration.create({
|
|
|
|
sql
|
|
|
|
})
|
|
|
|
expect(config.integration.client.request).toHaveBeenCalledWith()
|
|
|
|
expect(response[0]).toEqual(sql)
|
2021-03-16 14:54:39 +01:00
|
|
|
})
|
|
|
|
|
2021-11-09 12:16:12 +01:00
|
|
|
it("calls the read method with the correct params", async () => {
|
|
|
|
const sql = "select * from users;"
|
|
|
|
const response = await config.integration.read({
|
|
|
|
sql
|
|
|
|
})
|
|
|
|
expect(config.integration.client.request).toHaveBeenCalledWith()
|
|
|
|
expect(response[0]).toEqual(sql)
|
2021-03-16 14:54:39 +01:00
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
describe("no rows returned", () => {
|
2021-05-24 13:14:04 +02:00
|
|
|
beforeEach(async () => {
|
|
|
|
await config.integration.connect()
|
2021-03-16 14:54:39 +01:00
|
|
|
})
|
|
|
|
|
|
|
|
it("returns the correct response when the create response has no rows", async () => {
|
|
|
|
const sql = "insert into users (name, age) values ('Joe', 123);"
|
|
|
|
const response = await config.integration.create({
|
|
|
|
sql
|
|
|
|
})
|
2021-11-09 12:16:12 +01:00
|
|
|
expect(response[0]).toEqual(sql)
|
2021-03-16 14:54:39 +01:00
|
|
|
})
|
|
|
|
})
|
|
|
|
})
|