节点pg客户端连接返回什么

问题描述 投票:0回答:1

很简单的问题,无论是否可以回答,我都不知道。问题是运行一些测试以验证我是否使用mocha连接到postgres数据库。我从client.connect()返回一个值,但是它未定义,显然是给了我错误。所以问题是pg节点返回的client.connect是什么。如果您有其他方法我可以实现测试连接,我也很乐意听到它。

Mocha Test connectivity to DB

这是非常接近的我会使用它虽然我不知道他们如何验证它是否通过,因为我希望我的测试失败,当我没有传递正确的数据,但确实通过我发送正确的数据。

   connectToTable: async function (client) {
     client = client || new Client({
        user: "my_user",
        host: "postgres",
        database: "my_database",
        password: "password123",
        port: 5432,
        max: 20,
        idleTimeoutMillis: 30000,
        connectionTimeoutMillis: 2000,
    });

    let resp = await client.connect()
    await expect(JSON.stringify(resp)).to.not.contain('Error');
    done() 

这就是我在做的事情。而错误是。

 AssertionError: object tested must be an array, a map, an object, a set, 
 a string, or a weakset, but undefined given

我已经尝试过将其打印出去,但我甚至不确定要打印出来的内容,所以JSON stringify就是我在那里弄乱不同的想法。

所以我对不同的测试方法开放。或者说明我给出的另一个堆栈溢出的示例如何工作,以便我可以设计我的测试。任何帮助表示赞赏

node.js postgresql mocha pg
1个回答
1
投票

Connect是异步和等待的。因此,为了等待,底层函数必须返回一个承诺。所以,connect返回一个promise。

© www.soinside.com 2019 - 2024. All rights reserved.