feat: implement security, discovery, history, file transfer, web UI (P0-P3)

This commit is contained in:
2026-08-14 09:45:54 -04:00
parent 8281478f0c
commit 884415c1c1
32 changed files with 1923 additions and 200 deletions
+44
View File
@@ -0,0 +1,44 @@
package security
import (
"os"
"path/filepath"
"testing"
)
func TestGenerateKey(t *testing.T) {
k1, err := GenerateKey()
if err != nil {
t.Fatalf("GenerateKey: %v", err)
}
k2, err := GenerateKey()
if err != nil {
t.Fatalf("GenerateKey: %v", err)
}
if len(k1) != 64 {
t.Errorf("key length = %d, want 64 hex chars", len(k1))
}
if k1 == k2 {
t.Error("two generated keys are identical")
}
}
func TestGenerateSelfSignedCert(t *testing.T) {
dir := t.TempDir()
certFile := filepath.Join(dir, "cert.pem")
keyFile := filepath.Join(dir, "key.pem")
if err := GenerateSelfSignedCert(certFile, keyFile, []string{"localhost", "127.0.0.1"}); err != nil {
t.Fatalf("GenerateSelfSignedCert: %v", err)
}
for _, f := range []string{certFile, keyFile} {
info, err := os.Stat(f)
if err != nil {
t.Fatalf("Stat %s: %v", f, err)
}
if info.Size() == 0 {
t.Errorf("%s is empty", f)
}
}
}