Skip to content

Commit 9aaa6fe

Browse files
DX-2692 Recordings API Integration Tests (#96)
* Added initial call creation and recording tests. * Working on downloading recordings. * Added tests for downloading recordings, transcriptions, and deleting. * Added validation of 204 response for deleting recording media. * Extracted common call setup functionality and began work on active updates. * Added Manteca polling for calls tests. * Began work on testing error paths for recordings api. * Added GitHub Actions environment vars for OS and Python Version. * Added method stubs for invalid endpoint tests. * Created invalid tests for several endpoints. * Completed tests for invalid recordings API calls. * Added docstrings for test methods. * Updated happy path to use extracted method. * Added checks for 2XX response codes. * Updating access to environment variables. * Removed tracking for .vscode * Increased timeout period for Manteca polling. * Updated teardown for call length restriction. * Fix api_instance typo causing test failures * Bump time.sleep to `5` to account for long running transcriptions Co-authored-by: AJ Rice <[email protected]>
1 parent 2c6e376 commit 9aaa6fe

File tree

2 files changed

+656
-36
lines changed

2 files changed

+656
-36
lines changed

.github/workflows/test.yaml

Lines changed: 40 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -13,44 +13,48 @@ jobs:
1313
strategy:
1414
matrix:
1515
os: [windows-2022, windows-2019, ubuntu-18.04, ubuntu-20.04]
16-
python-version: [3.6, 3.7, 3.8, 3.9, '3.10']
16+
python-version: [3.6, 3.7, 3.8, 3.9, "3.10"]
1717
steps:
18-
- name: Checkout
19-
uses: actions/checkout@v2
18+
- name: Checkout
19+
uses: actions/checkout@v2
2020

21-
- name: Set up Python
22-
uses: actions/setup-python@v2
23-
with:
24-
python-version: ${{ matrix.python-version }}
21+
- name: Set up Python
22+
uses: actions/setup-python@v2
23+
with:
24+
python-version: ${{ matrix.python-version }}
2525

26-
- name: Install Packages
27-
run: |
28-
pip install -r requirements.txt
29-
pip install -r test-requirements.txt
26+
- name: Install Packages
27+
run: |
28+
pip install -r requirements.txt
29+
pip install -r test-requirements.txt
3030
31-
- name: Test
32-
env:
33-
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
34-
BW_USERNAME: ${{ secrets.BW_USERNAME }}
35-
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
36-
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
37-
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
38-
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
39-
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
40-
BW_NUMBER: ${{ secrets.BW_NUMBER }}
41-
USER_NUMBER: ${{ secrets.USER_NUMBER }}
42-
VZW_NUMBER: ${{ secrets.VZW_NUMBER }}
43-
ATT_NUMBER: ${{ secrets.ATT_NUMBER }}
44-
T_MOBILE_NUMBER: ${{ secrets.T_MOBILE_NUMBER }}
45-
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
46-
PYTHON_VERSION: ${{ matrix.python-version }}
47-
run: pytest
48-
49-
- name: Notify Slack of Failures
50-
uses: Bandwidth/[email protected]
51-
if: failure() && !github.event.pull_request.draft
52-
with:
53-
job-status: ${{ job.status }}
54-
slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
55-
slack-channel: ${{ secrets.SLACK_CHANNEL }}
31+
- name: Test
32+
env:
33+
BW_ACCOUNT_ID: ${{ secrets.BW_ACCOUNT_ID }}
34+
BW_USERNAME: ${{ secrets.BW_USERNAME }}
35+
BW_PASSWORD: ${{ secrets.BW_PASSWORD }}
36+
BW_USERNAME_FORBIDDEN: ${{ secrets.BW_USERNAME_FORBIDDEN }}
37+
BW_PASSWORD_FORBIDDEN: ${{ secrets.BW_PASSWORD_FORBIDDEN }}
38+
BW_VOICE_APPLICATION_ID: ${{ secrets.BW_VOICE_APPLICATION_ID }}
39+
BW_MESSAGING_APPLICATION_ID: ${{ secrets.BW_MESSAGING_APPLICATION_ID }}
40+
BW_NUMBER: ${{ secrets.BW_NUMBER }}
41+
USER_NUMBER: ${{ secrets.USER_NUMBER }}
42+
VZW_NUMBER: ${{ secrets.VZW_NUMBER }}
43+
ATT_NUMBER: ${{ secrets.ATT_NUMBER }}
44+
T_MOBILE_NUMBER: ${{ secrets.T_MOBILE_NUMBER }}
45+
BASE_CALLBACK_URL: ${{ secrets.BASE_CALLBACK_URL }}
46+
PYTHON_VERSION: ${{ matrix.python-version }}
47+
OPERATING_SYSTEM: ${{ matrix.os }}
48+
MANTECA_ACTIVE_NUMBER: ${{ secrets.MANTECA_ACTIVE_NUMBER }}
49+
MANTECA_IDLE_NUMBER: ${{ secrets.MANTECA_IDLE_NUMBER }}
50+
MANTECA_BASE_URL: ${{ secrets.MANTECA_BASE_URL }}
51+
MANTECA_APPLICATION_ID: ${{ secrets.MANTECA_APPLICATION_ID }}
52+
run: pytest
5653

54+
- name: Notify Slack of Failures
55+
uses: Bandwidth/[email protected]
56+
if: failure() && !github.event.pull_request.draft
57+
with:
58+
job-status: ${{ job.status }}
59+
slack-bot-token: ${{ secrets.SLACK_BOT_TOKEN }}
60+
slack-channel: ${{ secrets.SLACK_CHANNEL }}

0 commit comments

Comments
 (0)