Hi,
TL/DR: this makes it difficult to have an open source library that uses hubspot’s API, with a test suite that can be used in the long term without changing the configuration and with many contributors.
It’s great to make little tests for a small dev team though.
I want to make changes to the ruby gem, mainly adding features.
Of course, it needs testing, and for that reason I currently need to make POST requests.
Until now the code used the demo API key, with a tool named VCR to record HTTP requests in “cassettes” (and so bother the real servers only once).
It seems like we are supposed to use test accounts now.
But there are problems with this solution:
First, the expiration of the test accounts make it difficult to have tests that work in the long term.
If for some reason we need to regenerate VCRs cassettes, e.g. to have them updated after an API change, the key and portal id must change.
If we want to make a new test using the test portal after expiration, and we create a new one, we need to update all the test suite to the new portal, as the key is shared between tests cases.
Also, this leads nicely to the second problem: the ruby gem is open source.
AFAIK, test portals aren’t accessible to everyone in the world.
So if I, simple contributor, need a new test portal, am I supposed to ask for one to the gem’s owners?
I guess you can see that this isn’t an ideal solution. Mainteners have to do mundane tasks without a real value, they should concentrate to validate contributions.
Is there a solution I don’t see? How do you maintain your public libraries?