From 8407f210903a4dd077d0e9906e495b03514d84c9 Mon Sep 17 00:00:00 2001 From: MrMelon54 Date: Tue, 18 Feb 2025 21:33:15 +0000 Subject: [PATCH] Fix broken agent tests --- agent/agent.go | 4 ++-- agent/agent_test.go | 29 +++++++++++++++++++---------- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index f7ece1d..3e80d44 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -160,7 +160,7 @@ func (a *Agent) syncSingleAgentCertPairs(startTime time.Time, agent syncAgent, r } for _, row := range rows { - err := a.copySingleCertPair(scpClient, row) + err := a.copySingleCertPair(&scpClient, row) if err != nil { // This cert sync is allowed to fail without stopping other certs going to the // same agent from copying. @@ -184,7 +184,7 @@ func (a *Agent) syncSingleAgentCertPairs(startTime time.Time, agent syncAgent, r return nil } -func (a *Agent) copySingleCertPair(scpClient scp.Client, row database.FindAgentToSyncRow) error { +func (a *Agent) copySingleCertPair(scpClient *scp.Client, row database.FindAgentToSyncRow) error { certName := utils.GetCertFileName(row.CertID) keyName := utils.GetKeyFileName(row.CertID) diff --git a/agent/agent_test.go b/agent/agent_test.go index 3f6ab06..178b430 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -69,7 +69,7 @@ func TestAgentSyncing(t *testing.T) { now := time.Now().UTC() t.Run("missing cert file", func(t *testing.T) { - err = agent.syncSingleAgentCertPair(now, database.FindAgentToSyncRow{ + err = agent.copySingleCertPair(nil, database.FindAgentToSyncRow{ AgentID: 1337, Address: "", User: "test", @@ -102,7 +102,7 @@ func TestAgentSyncing(t *testing.T) { assert.NoError(t, err) t.Run("missing key file", func(t *testing.T) { - err = agent.syncSingleAgentCertPair(now, database.FindAgentToSyncRow{ + err = agent.copySingleCertPair(nil, database.FindAgentToSyncRow{ AgentID: 1337, Address: "", User: "test", @@ -123,14 +123,23 @@ func TestAgentSyncing(t *testing.T) { server := setupFakeSSH(&wg, func(remoteAddrPort netip.AddrPort, remotePubKey ssh.PublicKey) { println("Attempt agent syncing") - err = agent.syncSingleAgentCertPair(now, database.FindAgentToSyncRow{ - AgentID: 1337, - Address: remoteAddrPort.String(), - User: "test", - Dir: "~/hello/world", - Fingerprint: string(ssh.MarshalAuthorizedKey(remotePubKey)), - CertID: 420, - CertNotAfter: sql.NullTime{Time: now, Valid: true}, + fingerprintStr := string(ssh.MarshalAuthorizedKey(remotePubKey)) + + err = agent.syncSingleAgentCertPairs(now, syncAgent{ + agentId: 1337, + address: remoteAddrPort.String(), + user: "test", + fingerprint: fingerprintStr, + }, []database.FindAgentToSyncRow{ + { + AgentID: 1337, + Address: remoteAddrPort.String(), + User: "test", + Dir: "~/hello/world", + Fingerprint: fingerprintStr, + CertID: 420, + CertNotAfter: sql.NullTime{Time: now, Valid: true}, + }, }) assert.NoError(t, err) })