refactor: optimize test DB setup — TestMain per package, truncate-only between tests
- Add TestMain to all 10 test packages (schema DROP+CREATE runs once per package) - Convert per-test setupTestDB to resetTestData (TRUNCATE only, ~60% faster) - Add 3 missing tables to TruncateTables (booking_edit_requests, exceptional_group_applications, business_settings) - Remove dead truncateDiscountTables helper - Consolidate discount_test.go into package bookings (was external test package) - Update testutils.SetupTestDB to truncate-only - Fix unused imports across user, bookings, and handlers packages - Verify: 286 passing, 2 skipped, 0 failures with -count=2 (no state leakage)
This commit is contained in:
@@ -21,16 +21,11 @@ import (
|
||||
"net/http/httptest"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"crussell/testutils/jwt"
|
||||
)
|
||||
|
||||
// TestGuestUser_Create_InvalidPhone verifies that an invalid phone number returns 400 Bad Request.
|
||||
func TestGuestUser_Create_InvalidPhone(t *testing.T) {
|
||||
cleanup, _ := setupTest(t)
|
||||
defer cleanup()
|
||||
|
||||
jwt.Init()
|
||||
resetTestData(t)
|
||||
|
||||
reqBody := CreateGuestUserRequest{
|
||||
FirstName: "Test",
|
||||
@@ -54,10 +49,7 @@ func TestGuestUser_Create_InvalidPhone(t *testing.T) {
|
||||
|
||||
// TestGuestUser_Create_EmptyFirstName verifies that an empty first name returns 400 Bad Request.
|
||||
func TestGuestUser_Create_EmptyFirstName(t *testing.T) {
|
||||
cleanup, _ := setupTest(t)
|
||||
defer cleanup()
|
||||
|
||||
jwt.Init()
|
||||
resetTestData(t)
|
||||
|
||||
reqBody := CreateGuestUserRequest{
|
||||
FirstName: "",
|
||||
@@ -81,10 +73,7 @@ func TestGuestUser_Create_EmptyFirstName(t *testing.T) {
|
||||
|
||||
// TestGuestUser_Create_NameTooLong verifies that a first name exceeding 50 characters returns 400 Bad Request.
|
||||
func TestGuestUser_Create_NameTooLong(t *testing.T) {
|
||||
cleanup, _ := setupTest(t)
|
||||
defer cleanup()
|
||||
|
||||
jwt.Init()
|
||||
resetTestData(t)
|
||||
|
||||
reqBody := CreateGuestUserRequest{
|
||||
FirstName: strings.Repeat("a", 51),
|
||||
@@ -108,10 +97,7 @@ func TestGuestUser_Create_NameTooLong(t *testing.T) {
|
||||
|
||||
// TestGuestUser_Create_InvalidEmail verifies that an invalid email format returns 400 Bad Request.
|
||||
func TestGuestUser_Create_InvalidEmail(t *testing.T) {
|
||||
cleanup, _ := setupTest(t)
|
||||
defer cleanup()
|
||||
|
||||
jwt.Init()
|
||||
resetTestData(t)
|
||||
|
||||
reqBody := CreateGuestUserRequest{
|
||||
FirstName: "Test",
|
||||
|
||||
Reference in New Issue
Block a user