Skip to content

Commit 5e2aae1

Browse files
AchoArnoldCopilot
andcommitted
feat(tests): add seed data and test environment config
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 360d0d8 commit 5e2aae1

3 files changed

Lines changed: 97 additions & 0 deletions

File tree

tests/.env.test

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
ENV=production
2+
GCP_PROJECT_ID=httpsms-test
3+
USE_HTTP_LOGGER=true
4+
ENTITLEMENT_ENABLED=false
5+
EVENTS_QUEUE_TYPE=emulator
6+
EVENTS_QUEUE_NAME=events-local
7+
EVENTS_QUEUE_ENDPOINT=http://localhost:8000/v1/events
8+
EVENTS_QUEUE_USER_API_KEY=system-user-api-key
9+
EVENTS_QUEUE_USER_ID=system-user-id
10+
FCM_ENDPOINT=http://emulator:9090
11+
DATABASE_URL=postgresql://dbusername:dbpassword@postgres:5432/httpsms
12+
DATABASE_URL_DEDICATED=postgresql://dbusername:dbpassword@postgres:5432/httpsms
13+
REDIS_URL=redis://@redis:6379
14+
APP_PORT=8000
15+
APP_NAME=httpSMS
16+
APP_URL=http://localhost:8000
17+
SWAGGER_HOST=localhost:8000
18+
SMTP_FROM_NAME=httpSMS
19+
SMTP_FROM_EMAIL=test@httpsms.com
20+
SMTP_USERNAME=
21+
SMTP_PASSWORD=
22+
SMTP_HOST=localhost
23+
SMTP_PORT=2525
24+
PUSHER_APP_ID=
25+
PUSHER_KEY=
26+
PUSHER_SECRET=
27+
PUSHER_CLUSTER=
28+
GCS_BUCKET_NAME=
29+
UPTRACE_DSN=
30+
CLOUDFLARE_TURNSTILE_SECRET_KEY=

tests/firebase-credentials.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"type": "service_account",
3+
"project_id": "httpsms-test",
4+
"private_key_id": "test-key-id",
5+
"private_key": "-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEAqx29E5Eea63wVdoWUiFetrCw0B/wpsi2/mD6eHmkeue6n0mS\\noVpw5Mb11z/iiDUDL1eX6b3oPdCruaKfvnJ4t2J2yXAT6hoPy+RiWJDRUZazHyKH\\nx68YkRDI1xMhFpn8CbC16vW9DGz2mSdEwI3M8VDxw0UDcCgB3U7WdsBuIaXS6Vs0\\n9pohYuRY3yk+CC6Q5MBh5RlRpO4xOQ2JHNJkMkG+av952Uro7J8/b1cnH3dMRpbO\\nDXtXgq0bSjuJVbd8c9ymDHcl7A5uAKdu8HCd5xbYVp9yKTzwanl2Kxx3Dphp8YaL\\nmJ1k5bgXaHJ2fhx7ESw2gv5lhTbxuMtd4esqdQIDAQABAoIBAHOqqoBre/C1ptuh\\ni60AuZEsZpiIvpc+3dOdojGFqFUcBt5dUSyYge9jPhK+MFZ53ylFQH7TzATc5Pea\\nofiOUGNFv53ykMOR0lO0kXXkjllkULgfE0E7bpPAkMIxQBCTDfdO5+lnKt8XWKm2\\nDZdLQtlsKcAhCm3p3TjHbdjfwpIi9VTV7bDoS/XbNi/vDKrL5KaH8w8zmg3M5VPV\\nuXwM5JempH4IfF0O57ZaZPjgeGgeSt3ZBBha8gD5xsVbnrpN0uIa8HBfx65sK9kX\\ny5mD9yBezvRZTYvNIZAajGl5kY/G0sOMSJZ+K6CwRxUT11Cnph9F2cPzX40vszY9\\noN1CEpECgYEAwXB5OFQ832xV8IS2zgztJHb6Jb+jdhFbz8uCy7rpc99L1m8XdprA\\nYAgjfXVQcoQrhxWKRN+RiWzNb2iNBqMujP1ebUi212JGa5QT5zX7YkExXOyL0b1U\\nead7hu+zox8MXi5cnxn/OWHpCV5VuSLxe1X/DRxl3/yQNWtthC3rSfMCgYEA4nUM\\nyA3Wj5I9zhCWSRdWUqQ0/lF6tGNiAXMeQLxGvHlESes8EYssCSDBaFE7MUlEllwL\\nNQJetSr0uxK9xBoiOmEfyCDtT8YQ/nDmoAPIGNWv84xsm+JzN1OfZAJxP1IhfmBl\\n+eKk6EeSQ213oEZBODsSksWvUOW9gGw+WYNZK/cCgYAi0rKf11pWBlS6Rcn68gzG\\n4bxKi2NL3/gdQk+7iVx5hZtLcRhSO62iHBT3guUGmJCVcuU/XNgAW1voUHQC2+GH\\ndB1Joyt3PrParf+fQfKNT5spVVQeX+0TMXllY0V9ehtp4QK/iZiOpfejvh3EhGvg\\nfiy6GYClf/weAcbnYrTWzQKBgEDnKS2hAbCOSlZn3JrALIZs9583/QH8RdeChdYp\\n3+AepVrGJ6YjjBBlqeja9ysOA7FQWgnsTvZ/hDqliWvNzaeLtI8oGLu3WaGC/CY6\\nTzwG6nHT+kDHKxxdRB5msMxkHqNYv4FZ2seT07CtjA6MdB7Il28nZzK5VZGb9Fa1\\nVXZLAoGAJRTsLzFyjlj/yCEhDLjeawRKbaVCQp5Qvb+wCqLpH1Q4u9tDg5e7A0H3\\nOXOUNUAOv7ufpofSWzKnujvjEURhScKnxiuAz/7a0Cd9Cen3ZK3vyaUr1AcvqNOE\\nCygZOEMRktGpP9zFX+RZV5jqGBEMkFft+IZ1bRwyUYsxKxTByqc=\\n-----END RSA PRIVATE KEY-----\\n",
6+
"client_email": "test@httpsms-test.iam.gserviceaccount.com",
7+
"client_id": "123456789",
8+
"auth_uri": "http://emulator:9090/auth",
9+
"token_uri": "http://emulator:9090/token",
10+
"auth_provider_x509_cert_url": "http://emulator:9090/certs",
11+
"client_x509_cert_url": "http://emulator:9090/certs/test"
12+
}

tests/seed.sql

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
-- Seed test data for integration tests
2+
-- Run AFTER GORM has migrated the schema (i.e., after API starts)
3+
4+
-- Test user
5+
INSERT INTO users (id, email, api_key, timezone, subscription_name, created_at, updated_at)
6+
VALUES (
7+
'test-user-id',
8+
'test@httpsms.com',
9+
'test-user-api-key',
10+
'UTC',
11+
'pro-monthly',
12+
NOW(),
13+
NOW()
14+
) ON CONFLICT (id) DO NOTHING;
15+
16+
-- System user (for event queue auth)
17+
INSERT INTO users (id, email, api_key, timezone, subscription_name, created_at, updated_at)
18+
VALUES (
19+
'system-user-id',
20+
'system@httpsms.com',
21+
'system-user-api-key',
22+
'UTC',
23+
'pro-monthly',
24+
NOW(),
25+
NOW()
26+
) ON CONFLICT (id) DO NOTHING;
27+
28+
-- Test phone
29+
INSERT INTO phones (id, user_id, fcm_token, phone_number, messages_per_minute, sim, max_send_attempts, message_expiration_seconds, created_at, updated_at)
30+
VALUES (
31+
'a1b2c3d4-e5f6-7890-abcd-ef1234567890',
32+
'test-user-id',
33+
'fake-fcm-token',
34+
'+18005550199',
35+
60,
36+
'SIM1',
37+
2,
38+
600,
39+
NOW(),
40+
NOW()
41+
) ON CONFLICT (id) DO NOTHING;
42+
43+
-- Phone API key (for emulator to authenticate as phone)
44+
INSERT INTO phone_api_keys (id, name, user_id, user_email, phone_numbers, phone_ids, api_key, created_at, updated_at)
45+
VALUES (
46+
'b2c3d4e5-f6a7-8901-bcde-f12345678901',
47+
'Integration Test Phone Key',
48+
'test-user-id',
49+
'test@httpsms.com',
50+
'{"+18005550199"}',
51+
'{"a1b2c3d4-e5f6-7890-abcd-ef1234567890"}',
52+
'pk_test-phone-api-key',
53+
NOW(),
54+
NOW()
55+
) ON CONFLICT (id) DO NOTHING;

0 commit comments

Comments
 (0)