Align document handlers/repo with contract updates

This commit is contained in:
Trey t
2026-02-18 21:37:38 -06:00
parent e7c23bdeb1
commit 09a35c0b99
5 changed files with 156 additions and 131 deletions

View File

@@ -31,7 +31,9 @@ func TestDocumentHandler_ListDocuments(t *testing.T) {
handler, e, db := setupDocumentHandler(t)
user := testutil.CreateTestUser(t, db, "owner", "owner@test.com", "password")
residence := testutil.CreateTestResidence(t, db, user.ID, "Test House")
testutil.CreateTestDocument(t, db, residence.ID, user.ID, "Test Doc")
activeDoc := testutil.CreateTestDocument(t, db, residence.ID, user.ID, "Test Doc")
inactiveDoc := testutil.CreateTestDocument(t, db, residence.ID, user.ID, "Old Doc")
require.NoError(t, db.Model(&inactiveDoc).Update("is_active", false).Error)
authGroup := e.Group("/api/documents")
authGroup.Use(testutil.MockAuthMiddleware(user))
@@ -45,7 +47,18 @@ func TestDocumentHandler_ListDocuments(t *testing.T) {
err := json.Unmarshal(w.Body.Bytes(), &response)
require.NoError(t, err)
assert.Len(t, response, 1)
assert.Equal(t, "Test Doc", response[0]["title"])
assert.Equal(t, activeDoc.Title, response[0]["title"])
})
t.Run("can list inactive documents when requested", func(t *testing.T) {
w := testutil.MakeRequest(e, "GET", "/api/documents/?is_active=false", nil, "test-token")
testutil.AssertStatusCode(t, w, http.StatusOK)
var response []map[string]interface{}
err := json.Unmarshal(w.Body.Bytes(), &response)
require.NoError(t, err)
assert.Len(t, response, 1)
assert.Equal(t, inactiveDoc.Title, response[0]["title"])
})
}