add unit tests around multiple subscriptions and socket creation