package wechat import ( "fmt" "strings" "testing" ) func TestAccessTokenBackoffForQuotaError(t *testing.T) { appID := "test-quota-app" clearAccessTokenFailure(appID) t.Cleanup(func() { clearAccessTokenFailure(appID) }) rememberAccessTokenFailure(appID, fmt.Errorf("获取access_token失败: errcode=45009, errmsg=reach max api daily quota limit")) err := accessTokenBackoffError(appID) if err == nil { t.Fatalf("expected backoff error") } if !strings.Contains(err.Error(), "45009") { t.Fatalf("expected original quota error to be preserved, got %v", err) } clearAccessTokenFailure(appID) if err := accessTokenBackoffError(appID); err != nil { t.Fatalf("expected no backoff after clear, got %v", err) } }