fix: harden custom QR login output

This commit is contained in:
2026-07-20 11:20:39 +08:00
parent 88df3149be
commit 74486ebf08
3 changed files with 66 additions and 13 deletions
+20
View File
@@ -37,6 +37,26 @@ func TestWithQRWriterRejectsNil(t *testing.T) {
}
}
func TestWithQRWriterRejectsTypedNil(t *testing.T) {
var output *bytes.Buffer
_, err := NewClient(t.TempDir(), WithQRWriter(output))
if err == nil || err.Error() != "QR writer must not be nil" {
t.Fatalf("error = %v, want QR writer must not be nil", err)
}
}
func TestWithQRWriterAcceptsStructWriter(t *testing.T) {
if _, err := NewClient(t.TempDir(), WithQRWriter(structWriter{})); err != nil {
t.Fatal(err)
}
}
type structWriter struct{}
func (structWriter) Write(data []byte) (int, error) {
return len(data), nil
}
func TestDefaultQRWriterIsStdout(t *testing.T) {
client, err := NewClient(t.TempDir())
if err != nil {