go - 运行 Stellar Horizon 测试用例之前需要注意的事项
问题描述
我已经从 GitHub 克隆了 Stellar Horizon Repo,它是用 Go 编写的。我想先运行测试用例。测试用例是使用 GINKGO 测试框架编写的。我一直在使用 ginkgo 命令运行测试用例,例如: ginkgo(此处将给出包路径名)。这就是我运行测试用例的方式。特定包的测试用例已正确执行。但是我只在第一个测试文件中感到恐慌。我调试并发现在运行命令时发生了恐慌。请找到以下详细信息以供参考。
文件名 : action_accounts_test.go 函数名 : TestAccountAction_Show() // 下面已经定义了
func TestAccountActions_Show(t *testing.T) {
ht := StartHTTPTest(t, "allow_trust") **// This function is not returning anything. Its //getting panic inside this //**
defer ht.Finish()
// existing account
w := ht.Get(
"/accounts/GCXKG6RN4ONIEPCMNFB732A436Z5PNDSRLGWK7GBLCMQLIFO4S7EYWVU",
)
if ht.Assert.Equal(200, w.Code) {
var result horizon.Account
err := json.Unmarshal(w.Body.Bytes(), &result)
ht.Require.NoError(err)
ht.Assert.Equal("8589934593", result.Sequence)
ht.Assert.NotEqual(0, result.LastModifiedLedger)
for _, balance := range result.Balances {
if balance.Type == "native" {
ht.Assert.Equal(uint32(0), balance.LastModifiedLedger)
} else {
ht.Assert.NotEqual(uint32(0), balance.LastModifiedLedger)
}
}
}
// missing account
w = ht.Get("/accounts/GDBAPLDCAEJV6LSEDFEAUDAVFYSNFRUYZ4X75YYJJMMX5KFVUOHX46SQ")
ht.Assert.Equal(404, w.Code)
}
我做了一个调试,发现它在上面的 func StartHTTPTest()内部发生的下面的 func 调用中出现恐慌
scenarios.Load(StellarCoreDatabaseURL(), stellarCorePath)
scenarios.Load(DatabaseURL(), horizonPath)
特定功能的定义
func Load(url string, path string) {
log.Println("database url", url, " Path : ", path)
sql, err := Asset(path)
log.Println("Print err:", err, " sql :", sql)
if err != nil {
log.Panic(err)
}
reader := bytes.NewReader(sql)
cmd := exec.Command("psql", url)
cmd.Stdin = reader
err = cmd.Run() **// Exactly here it return some error**
log.Println("Print err", err)
if err != nil { **// Since err is not nil .the statement will get executed .**
**log.Panic(err)**
}
}
cmd.Run()返回的错误是 退出状态2 我刚刚打印了错误,发现这是错误退出状态2
特定错误的原因是什么?
解决方案
推荐阅读
- javascript - 如何将 html 字符串附加/添加到输出变量,连接对 map 方法做了什么?
- python-3.x - 带有逗号分隔符 -jinja2 和 python 3 的数字不支持字符串
- acumatica - Acumatica 自定义任务和活动弹出窗口
- python - 如何为 Matplotlib 中的每个类别绘制具有不同类别的分类条形图?
- ios - 'OsmAndCore/QtExtensions.h' 文件未找到
- visual-studio - 查找并替换所有出现的函数定义
- dataframe - 如何绘制各县男女的折线图?
- amazon-web-services - 是否可以在 AWS 中触发 lambda init?
- r - RStudio 自动加载包
- swiftui - 如果我按下后退按钮,我如何在 UserDefaults SwiftUI 中为注销按钮重置数据?