twilio / twilio-voice.js

Twilio's JavaScript Voice SDK
Other
52 stars 53 forks source link

[VBLOCKS-2988] Eventing integration tests #268

Closed mhuynh5757 closed 4 months ago

mhuynh5757 commented 4 months ago

Contributing to Twilio

All third party contributors acknowledge that any contributions they provide will be made under the same open source license that the open source project is provided under.

Pull Request Details

JIRA link(s):

Description

This PR implements a basic test relay server for testing eventing end-to-end. It uses ngrok to expose the endpoints for Twilio to interact with, and allows the test browser to confirm relayed messages. To limit the PR size, this PR only implements the happy paths.

Burndown

Before review

Before merge

mhuynh5757 commented 4 months ago

Note that while the PR looks large, a lot of it is package.json and package-lock.json changes. Additionally, I've copied the karma.conf.ts file and made a karma.eventing.conf.ts file that runs solely the eventing tests. This is because I believe it makes sense to have it run as a separate CI step since it has a dependency on an internal server, where the other tests do not.

In the end, the PR should be about 300~400 lines of additions.

charliesantos commented 4 months ago

@mhuynh5757 can we also add one test for errors? Testing the invalid content is a good candidate. We need to make sure the error event bubbles up from signaling.

mhuynh5757 commented 4 months ago

@charliesantos sure I can add an unhappy path test, but I was under the impression we were going to add more tests in another PR so this one doesn't blow up. Do you want it in this PR?

charliesantos commented 4 months ago

@charliesantos sure I can add an unhappy path test, but I was under the impression we were going to add more tests in another PR so this one doesn't blow up. Do you want it in this PR?

Ok, we can do it in another ticket. Can you create a JIRA under Eventing 2.0 epic please?