Interesting. Though there is nothing in the docs which seems to suggest that all affinities must be defined together. Actually it looks quite the opposite given that affinities are passed as environment variables so you can pass as many as you want. Also if you take a look here:
both functions works with an array of affinities. I would have to test this myself but I never experienced a different container allocation other than the one I declared.
Anyhow, thanks for the feedback.