protected UseRoleIgnoredSpec(UseRoleIgnoredSpecConfig config)
     : base(config)
 {
     _config = config;
 }
 protected UseRoleIgnoredSpec(UseRoleIgnoredSpecConfig config)
     : base(config)
 {
     _config = config;
 }
        private Dictionary<Address, int> ReceiveReplays(UseRoleIgnoredSpecConfig.IRouteeType routeeType,
            int expectedReplies)
        {
            var zero = Roles.Select(c => GetAddress(c)).ToDictionary(c => c, c => 0);
            var replays = ReceiveWhile(5.Seconds(), msg =>
            {
                var routee = msg as UseRoleIgnoredSpecConfig.Reply;
                if (routee != null && routee.RouteeType.GetType() == routeeType.GetType())
                    return FullAddress(routee.ActorRef);
                return null;
            }, expectedReplies).Aggregate(zero, (replyMap, address) =>
            {
                replyMap[address]++;
                return replyMap;
            });

            return replays;
        }