in your ‘given’ events, you will need to add the meta data yourself, if your aggregate relies on it. The dispatch interceptor on the command bus will only affect the events generated as a result of commands.
You can use GenericEventMessage.asEventMessage(…).andMetaData(…) to attach meta data to events.
The same suggestion to populate MetaData beforehand on events applies to commands.
To that end, you could utilize the GenericCommandMessage.asCommandMessage({your-command-object}).andMetaData(…) chain to achieve just that.
Additionally, I’d like to point out that if you are event sourcing your Aggregates, we typically suggest to not use the expectState method.
Your aggregate is derived from the events it publishes, so verifying the events should be sufficient to testing your scenario.
The expecState method was introduced for the users which use a state-stored approach for aggregates instead of event sourcing.