On branch main

modified:   main_dc/yalarba/api_yal/cmd/testrunner/main.go
	modified:   main_dc/yalarba/api_yal/cmd/testrunner/runner.go
	modified:   main_dc/yalarba/api_yal/tests/integration/account_test.go
	modified:   main_dc/yalarba/api_yal/tests/integration/appeal_test.go
	modified:   main_dc/yalarba/api_yal/tests/integration/auth_test.go
	modified:   main_dc/yalarba/api_yal/tests/integration/comment_test.go
	modified:   main_dc/yalarba/api_yal/tests/integration/feedback_test.go
	modified:   main_dc/yalarba/api_yal/tests/integration/object_test.go
	modified:   main_dc/yalarba/api_yal/tests/integration/rating_test.go
	deleted:    main_dc/yalarba/api_yal/tests/testutils/client.go
	modified:   main_dc/yalarba/api_yal/tests/testutils/fixtures.go
	modified:   main_dc/yalarba/api_yal/tests/testutils/setup.go
write comments for and into test's functions
This commit is contained in:
2026-06-08 01:58:04 +05:00
parent b4574f9df1
commit d1e45c7686
12 changed files with 346 additions and 118 deletions
@@ -5,9 +5,12 @@ import (
"testing"
)
// TestObjectEndpoints тестирует все эндпоинты для работы с объектами (местами, заведениями)
// Включает создание, получение, обновление, удаление объектов, поиск и геопоиск
func TestObjectEndpoints(t *testing.T) {
config := testutils.NewTestConfig()
// CreateObject тестирует создание нового объекта пользователем
t.Run("CreateObject", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -52,6 +55,7 @@ func TestObjectEndpoints(t *testing.T) {
}
})
// GetObjectByID тестирует получение объекта по ID
t.Run("GetObjectByID", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -78,6 +82,7 @@ func TestObjectEndpoints(t *testing.T) {
}
})
// GetNonExistentObject тестирует получение несуществующего объекта
t.Run("GetNonExistentObject", func(t *testing.T) {
resp, err := config.Request("GET", "/objects/999999", nil, "")
if err != nil {
@@ -90,6 +95,7 @@ func TestObjectEndpoints(t *testing.T) {
}
})
// UpdateObject тестирует обновление объекта его владельцем
t.Run("UpdateObject", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -122,6 +128,7 @@ func TestObjectEndpoints(t *testing.T) {
}
})
// UpdateObjectUnauthorized тестирует попытку обновления чужого объекта
t.Run("UpdateObjectUnauthorized", func(t *testing.T) {
user1 := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user1)
@@ -131,6 +138,7 @@ func TestObjectEndpoints(t *testing.T) {
objectID := config.CreateTestObject(t, user1.Token)
// Пользователь user2 пытается обновить объект user1
resp, err := config.Request("PUT", "/objects/"+string(rune(objectID)), map[string]interface{}{
"short_name": "Hacked Name",
}, user2.Token)
@@ -139,11 +147,13 @@ func TestObjectEndpoints(t *testing.T) {
}
defer resp.Body.Close()
// Ожидаем ошибку 403 Forbidden
if resp.StatusCode != 403 {
t.Errorf("Expected status 403, got %d", resp.StatusCode)
}
})
// ListObjects тестирует получение списка объектов с пагинацией
t.Run("ListObjects", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -173,6 +183,7 @@ func TestObjectEndpoints(t *testing.T) {
}
})
// SearchObjects тестирует поиск объектов по тексту
t.Run("SearchObjects", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -195,9 +206,10 @@ func TestObjectEndpoints(t *testing.T) {
}
t.Logf("Search results: %+v", searchResults)
_ = objectID
_ = objectID // Используем переменную для избежания предупреждения
})
// NearbyObjects тестирует поиск объектов рядом с заданными координатами
t.Run("NearbyObjects", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -213,6 +225,7 @@ func TestObjectEndpoints(t *testing.T) {
}
})
// DeleteObject тестирует удаление объекта
t.Run("DeleteObject", func(t *testing.T) {
user := config.CreateTestUser(t)
defer config.CleanupTestUser(t, user)
@@ -229,7 +242,7 @@ func TestObjectEndpoints(t *testing.T) {
t.Errorf("Expected status 204, got %d", resp.StatusCode)
}
// Проверяем, что объект удален
// Проверяем, что объект удален - должен вернуть 404
getResp, err := config.Request("GET", "/objects/"+string(rune(objectID)), nil, "")
if err != nil {
t.Fatalf("Failed to get object: %v", err)
@@ -240,4 +253,4 @@ func TestObjectEndpoints(t *testing.T) {
t.Errorf("Expected status 404 for deleted object, got %d", getResp.StatusCode)
}
})
}
}