test: improve test isolation and setup management
Add Token and RegularToken fields to TestServerSetup for pre-authenticated access. Update setupTestServer to create fresh users with valid tokens at initialization time. Simplify createTestMediaItemID to use setup.Token. Remove loginTestUser, loginRegularUser, loginAdminUser functions in favor of setup.Token/setup.RegularToken. Update createTestUserOnce and getTestUserID/getRegularUserID to be idempotent. Update all test files to use setup.Token instead of calling login helpers.
This commit is contained in:
@@ -67,7 +67,7 @@ func TestMediaItemISBNNormalization(t *testing.T) {
|
||||
setup := setupTestServer(t)
|
||||
|
||||
// Create an ebook library first
|
||||
token := loginTestUser(t, setup.Server, setup.DB)
|
||||
token := setup.Token
|
||||
libID := createTestLibrary(t, setup.Server, token, "test-isbn-lib")
|
||||
|
||||
// Add a folder to the library (required before adding media items)
|
||||
@@ -209,7 +209,7 @@ func TestMediaItemISBNNormalization(t *testing.T) {
|
||||
func TestMediaItemISBNEdgeCases(t *testing.T) {
|
||||
setup := setupTestServer(t)
|
||||
|
||||
token := loginTestUser(t, setup.Server, setup.DB)
|
||||
token := setup.Token
|
||||
libID := createTestLibrary(t, setup.Server, token, "test-isbn-edge-lib")
|
||||
addFolderToLibrary(t, setup.Server, token, libID, "/app/uploads")
|
||||
|
||||
@@ -294,7 +294,7 @@ func TestMediaItemISBNEdgeCases(t *testing.T) {
|
||||
func TestMediaItemsPagination(t *testing.T) {
|
||||
setup := setupTestServer(t)
|
||||
|
||||
token := loginTestUser(t, setup.Server, setup.DB)
|
||||
token := setup.Token
|
||||
libID := createTestLibrary(t, setup.Server, token, "test-pagination-lib")
|
||||
addFolderToLibrary(t, setup.Server, token, libID, "/app/uploads")
|
||||
|
||||
@@ -406,7 +406,7 @@ func TestMediaItemsPagination(t *testing.T) {
|
||||
func TestMediaItemLibraryRequirement(t *testing.T) {
|
||||
setup := setupTestServer(t)
|
||||
|
||||
token := loginTestUser(t, setup.Server, setup.DB)
|
||||
token := setup.Token
|
||||
|
||||
t.Run("Create media-item without library should fail gracefully", func(t *testing.T) {
|
||||
payload := map[string]interface{}{
|
||||
@@ -469,7 +469,7 @@ func TestMediaItemLibraryRequirement(t *testing.T) {
|
||||
func TestUpdateMediaItemISBN(t *testing.T) {
|
||||
setup := setupTestServer(t)
|
||||
|
||||
token := loginTestUser(t, setup.Server, setup.DB)
|
||||
token := setup.Token
|
||||
libID := createTestLibrary(t, setup.Server, token, "test-update-lib")
|
||||
addFolderToLibrary(t, setup.Server, token, libID, "/app/uploads")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user