public MatchMakingGroupManager(IShamanLogger logger, ITaskSchedulerFactory taskSchedulerFactory, IPlayersManager playersManager, IShamanMessageSender messageSender, IMmMetrics mmMetrics, IRoomManager roomManager, IRoomPropertiesProvider roomPropertiesProvider, IApplicationConfig config) { _logger = logger; _taskSchedulerFactory = taskSchedulerFactory; _playersManager = playersManager; _messageSender = messageSender; _mmMetrics = mmMetrics; _roomManager = roomManager; _roomPropertiesProvider = roomPropertiesProvider; _config = config; }
public void Setup() { // var config = new MmApplicationConfig("", "127.0.0.1", new List<ushort> {0}, "", 120000, GameProject.DefaultGame,"", 7002, isAuthOn:false); var config = new ApplicationConfig { PublicDomainNameOrAddress = "127.0.0.1", ListenPorts = new List <ushort> { 0 }, IsAuthOn = false, BindToPortHttp = 7002 }; _logger = new ConsoleLogger(); _roomPropertiesProvider = new FakeRoomPropertiesProvider(3, 500, 250, 3); _taskSchedulerFactory = new TaskSchedulerFactory(_logger); _playersManager = new PlayersManager(Mock.Of <IMmMetrics>(), _logger); _packetSender = Mock.Of <IShamanMessageSender>(); _serverProvider = new FakeServerProvider(); _requestSender = new FakeSender(); _roomApiProvider = new DefaultRoomApiProvider(_requestSender, _logger); _roomManager = new RoomManager(_serverProvider, _logger, _taskSchedulerFactory, _roomApiProvider); _measures.Add(FakePropertyCodes.PlayerProperties.GameMode, 1); _playerProperties = new Dictionary <byte, object> { { FakePropertyCodes.PlayerProperties.GameMode, 1 } }; _matchMakingGroupManager = new MatchMakingGroupManager(_logger, _taskSchedulerFactory, _playersManager, _packetSender, Mock.Of <IMmMetrics>(), _roomManager, _roomPropertiesProvider, config); _matchMakingGroupManager.AddMatchMakingGroup(_measures); _matchMakingGroupManager.Start(10000); }