Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

expect `Enable()` inTerm:'off' does not trigger failpoint code, but it's not as expect

Abierto
#86 0 comentarios 0 reacciones 0 asignados Ver en GitHub

@1fanwang ya está trabajando en esto.

Desde el 20/9/2026.

  • #93 de @1fanwang — abierto

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
45/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
go
Área
testing-qa

Línea de trabajo

Comienza con la definición de la acción off en el README y sigue cómo failpoint.Enable gestiona return(true)->off, off y return(2) en el código Go transformado. Ejecuta go test -v -run TestGetValue con los casos indicados y compara si la salida observada coincide con la semántica documentada. Se considera terminado cuando los tres casos producen el comportamiento descrito en el README.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug

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)
Lenguaje dominante
Go
Estrellas
896
Forks
69
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de pingcap/failpoint

Todos los issues de pingcap/failpoint

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.