Hi, thanks for letting us know! We are aware of this and will be working on adding the ability to use a test subscription ID for the new GetUserSubscriptionDetailsAsync() endpoint soon.
For EXP-0, I get HTTP 400 (bad request). For EXP-1 through EXP-4 I get a valid response as if I had provided a real subscription ID (rather than one of the testing IDs). All of EXP-0 through EXP-4 should be treated as testing IDs.
Yes, that is simply restating the title of this topic. The issue is that, because test subscription IDs are supported by some subscription APIs, I as a user expect those test IDs to work for all subscription APIs. If this is not the case then it makes it harder for me to test my game because I can’t properly test the APIs and have to special-case my testing code.
For example, something I do for testing is globally overwrite subscription ID setting to a test subscription ID so I can see what happens in my game when a subscription is in a particular state.
But this would no longer give expected results if I happen to use an API like GetUserSubscriptionDetailsAsync() in my game somewhere.
I actually have a game where I added support for using GetUserSubscriptionDetailsAsync() (rather than the older ways of getting info about a subscription), but then disabled that support, because it didn’t play nicely with test IDs. It just wasn’t worth the effort to use this new API if I couldn’t test it properly.
In the past your colleagues seem to have recognized this issue and said they were going to fix it, but I don’t know what has happened with that: