Skip to content

Commit

Permalink
Running backend tests in the same action
Browse files Browse the repository at this point in the history
  • Loading branch information
HamzaAnis committed Jan 2, 2024
1 parent 10b845e commit d36d760
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 2 deletions.
34 changes: 33 additions & 1 deletion .github/workflows/cypress-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,33 @@ jobs:
GUEST_PROFILE_ID: ${{ secrets.TEST_GUEST_PROFILE_ID }}
CYPRESS_ENV: ${{ secrets.CYPRESS_ENV }}
CYPRESS_BASE_URL: ${{ secrets.CYPRESS_BASE_URL }}
TEST_MENTOR_EMAIL: ${{ secrets.TEST_MENTOR_EMAIL }}
TEST_MENTOR_PASSWORD: ${{ secrets.TEST_MENTOR_PASSWORD }}
TEST_MENTOR_ROLE: ${{ secrets.TEST_MENTOR_ROLE }}
TEST_MENTOR_PROFILE_ID: ${{ secrets.TEST_MENTOR_PROFILE_ID }}
TEST_MENTOR_PHONE_NUMBER: ${{ secrets.TEST_MENTOR_PHONE_NUMBER }}
TEST_MENTOR_NAME: ${{ secrets.TEST_MENTOR_NAME }}
TEST_MENTEE_EMAIL: ${{ secrets.TEST_MENTEE_EMAIL }}
TEST_MENTEE_PASSWORD: ${{ secrets.TEST_MENTEE_PASSWORD }}
TEST_MENTEE_ROLE: ${{ secrets.TEST_MENTEE_ROLE }}
TEST_MENTEE_PROFILE_ID: ${{ secrets.TEST_MENTEE_PROFILE_ID }}
TEST_MENTEE_PHONE_NUMBER: ${{ secrets.TEST_MENTEE_PHONE_NUMBER }}
TEST_MENTEE_NAME: ${{ secrets.TEST_MENTEE_NAME }}
TEST_PARTNER_EMAIL: ${{ secrets.TEST_PARTNER_EMAIL }}
TEST_PARTNER_PASSWORD: ${{ secrets.TEST_PARTNER_PASSWORD }}
TEST_PARTNER_ROLE: ${{ secrets.TEST_PARTNER_ROLE }}
TEST_PARTNER_PROFILE_ID: ${{ secrets.TEST_PARTNER_PROFILE_ID }}
TEST_GUEST_EMAIL: ${{ secrets.TEST_GUEST_EMAIL }}
TEST_GUEST_PASSWORD: ${{ secrets.TEST_GUEST_PASSWORD }}
TEST_GUEST_ROLE: ${{ secrets.TEST_GUEST_ROLE }}
TEST_GUEST_PROFILE_ID: ${{ secrets.TEST_GUEST_PROFILE_ID }}
TEST_ADMIN_EMAIL: ${{ secrets.TEST_ADMIN_EMAIL }}
TEST_ADMIN_PASSWORD: ${{ secrets.TEST_ADMIN_PASSWORD }}
TEST_ADMIN_ROLE: ${{ secrets.TEST_ADMIN_ROLE }}
TEST_ADMIN_NAME: ${{ secrets.TEST_ADMIN_NAME }}
TEST_ADMIN_PROFILE_ID: ${{ secrets.TEST_ADMIN_PROFILE_ID }}
TEST_RECIPIENT_ID: ${{ secrets.TEST_RECIPIENT_ID }}
TEST_RECIPIENT_NAME: ${{ secrets.TEST_RECIPIENT_NAME }}

steps:
- name: Checkout repository
Expand All @@ -55,7 +82,7 @@ jobs:
echo "$FIREBASE_SERVICE_KEY" > firebase_service_key.json
cp firebase_service_key.json ./tests
docker build -t backend .
docker run --name backend -d -e SENDGRID_API_KEY="$SENDGRID_API_KEY" -e SENDER_EMAIL="$SENDER_EMAIL" -e TWILIO_ACCOUNT_SID="$TWILIO_ACCOUNT_SID" -e TWILIO_AUTH_TOKEN="$TWILIO_AUTH_TOKEN" -e TWILIO_PHONE="$TWILIO_PHONE" -e FLASK_APP="$FLASK_APP" -e IMGUR_KEY="$IMGUR_KEY" -e FIREBASE_API_KEY="$FIREBASE_API_KEY" -e MONGO_USER="$MONGO_USER" -e MONGO_PASSWORD="$MONGO_PASSWORD" -e MONGO_HOST="$MONGO_HOST" -e MONGO_DB="$MONGO_DB" -e GOOGLE_APPLICATION_CREDENTIALS="$GOOGLE_APPLICATION_CREDENTIALS" -p 8000:8000 backend
docker run --name backend -d -e SENDGRID_API_KEY="$SENDGRID_API_KEY" -e SENDER_EMAIL="$SENDER_EMAIL" -e TWILIO_ACCOUNT_SID="$TWILIO_ACCOUNT_SID" -e TWILIO_AUTH_TOKEN="$TWILIO_AUTH_TOKEN" -e TWILIO_PHONE="$TWILIO_PHONE" -e FLASK_APP="$FLASK_APP" -e IMGUR_KEY="$IMGUR_KEY" -e FIREBASE_API_KEY="$FIREBASE_API_KEY" -e MONGO_USER="$MONGO_USER" -e MONGO_PASSWORD="$MONGO_PASSWORD" -e MONGO_HOST="$MONGO_HOST" -e MONGO_DB="$MONGO_DB" -e GOOGLE_APPLICATION_CREDENTIALS="$GOOGLE_APPLICATION_CREDENTIALS" -e BASE_URL="$BASE_URL" -e TEST_MENTOR_EMAIL="$TEST_MENTOR_EMAIL" -e TEST_MENTOR_PASSWORD="$TEST_MENTOR_PASSWORD" -e TEST_MENTOR_ROLE="$TEST_MENTOR_ROLE" -e TEST_MENTOR_PROFILE_ID="$TEST_MENTOR_PROFILE_ID" -e TEST_MENTOR_PHONE_NUMBER="$TEST_MENTOR_PHONE_NUMBER" -e TEST_MENTOR_NAME="$TEST_MENTOR_NAME" -e TEST_MENTEE_EMAIL="$TEST_MENTEE_EMAIL" -e TEST_MENTEE_PASSWORD="$TEST_MENTEE_PASSWORD" -e TEST_MENTEE_ROLE="$TEST_MENTEE_ROLE" -e TEST_MENTEE_PROFILE_ID="$TEST_MENTEE_PROFILE_ID" -e TEST_MENTEE_PHONE_NUMBER="$TEST_MENTEE_PHONE_NUMBER" -e TEST_MENTEE_NAME="$TEST_MENTEE_NAME" -e TEST_PARTNER_EMAIL=$TEST_PARTNER_EMAIL -e TEST_PARTNER_PASSWORD=$TEST_PARTNER_PASSWORD -e TEST_PARTNER_ROLE=$TEST_PARTNER_ROLE -e TEST_PARTNER_PROFILE_ID="$TEST_PARTNER_PROFILE_ID" -e TEST_GUEST_EMAIL="$TEST_GUEST_EMAIL" -e TEST_GUEST_PASSWORD="$TEST_GUEST_PASSWORD" -e TEST_GUEST_ROLE="$TEST_GUEST_ROLE" -e TEST_GUEST_PROFILE_ID="$TEST_GUEST_PROFILE_ID" -e TEST_ADMIN_EMAIL="$TEST_ADMIN_EMAIL" -e TEST_ADMIN_PASSWORD="$TEST_ADMIN_PASSWORD" -e TEST_ADMIN_ROLE="$TEST_ADMIN_ROLE" -e TEST_ADMIN_NAME="$TEST_ADMIN_NAME" -e TEST_ADMIN_PROFILE_ID="$TEST_ADMIN_PROFILE_ID" -e TEST_RECIPIENT_ID="$TEST_RECIPIENT_ID" -e TEST_RECIPIENT_NAME="$TEST_RECIPIENT_NAME" -p 8000:8000 backend
- name: Build and run Frontend
run: |
Expand Down Expand Up @@ -88,3 +115,8 @@ jobs:
npm install
cd tests
CYPRESS_BASE_URL="$CYPRESS_BASE_URL" npx cypress run --headless
- name: Run Backend Tests
run: |
docker ps
docker exec backend /bin/bash -c "cd tests && pytest"
2 changes: 1 addition & 1 deletion backend/tests/test_messages.py
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ def test_message_send(client):
}

response = client.post("/api/messages/", headers=headers, json=json_data)
assert response.status_code == 200, f"Failed to send message. {response.text}"
assert response.get_json()["success"] == True, f"Failed to send message. {response.text}"


def test_messages(client):
Expand Down

0 comments on commit d36d760

Please sign in to comment.