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:
@@ -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)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user