expect `Enable()` inTerm:'off' does not trigger failpoint code, but it's not as expect
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- go
- 领域
- testing-qa
调研方向
从 README 中对 off 操作的定义开始,跟踪 failpoint.Enable 在转换后的 Go 代码中如何处理 return(true)->off、off 和 return(2)。使用报告的案例运行 go test -v -run TestGetValue,并比较观察到的输出是否符合文档所描述的语义。三个案例产生 README 所描述的行为即表示完成。
由索引模型根据 Issue 内容生成。
描述
Bug Report
- CODE(Transfromed)
func GetValue() int {
if _, _err_ := failpoint.Eval(_curpkg_("failpoint-name")); _err_ == nil {
fmt.Println("enable failpoint")
}
return 1
}
- TEST CODE
func TestGetValue(t *testing.T) {
var err error
fmt.Println("############case01###############")
err = failpoint.Enable("test/failpoint-name", "return(true)->off")
if err != nil {
t.Fatal("enable failpoint failed:", err)
}
GetValue()
fmt.Println("############case02###############")
err = failpoint.Enable("test/failpoint-name", "off")
if err != nil {
t.Fatal("enable failpoint failed:", err)
}
GetValue()
fmt.Println("############case03###############")
err = failpoint.Enable("test/failpoint-name", "return(2)")
if err != nil {
t.Fatal("enable failpoint failed:", err)
}
GetValue()
}
- EXPECT:
According to README, "off: Take no action (does not trigger failpoint code)", used to stop triggering of the failpoint. So my expectation is that case02 and case03 should not print "enable failpoint". - ACTUAL:
It seems no working. I'm not sure if I'm misunderstanding this argument.
go test -v -run TestGetValue
=== RUN TestGetValue
############case01###############
enable failpoint
############case02###############
enable failpoint
############case03###############
enable failpoint
--- PASS: TestGetValue (0.00s)
- 主要语言
- Go
- 星标
- 896
- 派生
- 69
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
pingcap/failpoint 的其他 Issue
-
难度 4/5 3-5 天 新手友好度 30/100
-
question
难度 3/5 1-2 天 新手友好度 35/100
-
bug
难度 3/5 1-2 天 新手友好度 35/100
-
bug
难度 3/5 1-2 天 新手友好度 45/100
-
难度 4/5 3-5 天 新手友好度 35/100
查看 pingcap/failpoint 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 64/100
docker/sbx-releases#737 ·
-
难度 2/5 1-3 小时 新手友好度 65/100
-
area/manager needs-triage
难度 2/5 1-3 小时 新手友好度 73/100
kyma-project/telemetry-manager#3922 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 86/100
JakeChampion/lang#12965 ·
维护者通常 1 天内回复
-
hacktoberfest priority: low skill: good first issue status: ready for dev
难度 2/5 1-3 小时 新手友好度 89/100
hyperledger-labs/fabric-smart-client#2218 ·
维护者通常 1 天内回复