| 123456789101112131415161718192021222324252627282930313233 |
- package service
- import "testing"
- func TestParseXrayKeyPairOutput(t *testing.T) {
- a, b, err := parseXrayKeyPairOutput("Private key: abc123\nPublic key: def456\n")
- if err != nil {
- t.Fatalf("well-formed output errored: %v", err)
- }
- if a != "abc123" || b != "def456" {
- t.Fatalf("got (%q, %q), want (abc123, def456)", a, b)
- }
- malformed := []string{
- "",
- "only one line: value",
- "Private key: abc\n",
- "no colon here\nno colon two",
- "Private key\nPublic key",
- }
- for _, out := range malformed {
- func() {
- defer func() {
- if r := recover(); r != nil {
- t.Errorf("parseXrayKeyPairOutput panicked on %q: %v", out, r)
- }
- }()
- if _, _, err := parseXrayKeyPairOutput(out); err == nil {
- t.Errorf("expected error for malformed output %q, got nil", out)
- }
- }()
- }
- }
|