public void SelectInvariantPlugIn() { var manager = new PlugInManager(); manager.RegisterPlugIn <IPacketHandlerPlugIn, PacketHandlerInvariant>(); var clientVersionProvider = new Mock <IClientVersionProvider>(); clientVersionProvider.Setup(p => p.ClientVersion).Returns(Season6E3English); var containerForSeason6 = new MainPacketHandlerPlugInContainer(clientVersionProvider.Object, manager); containerForSeason6.Initialize(); var handler = containerForSeason6[HandlerKey]; Assert.That(handler.GetType(), Is.EqualTo(typeof(PacketHandlerInvariant))); }
public void SelectPlugInOfCorrectVersionWhenLowerVersionsAreAvailable() { var manager = new PlugInManager(); manager.RegisterPlugIn <IPacketHandlerPlugIn, PacketHandlerSeason1>(); manager.RegisterPlugIn <IPacketHandlerPlugIn, PacketHandlerSeason6>(); var clientVersionProvider = new Mock <IClientVersionProvider>(); clientVersionProvider.Setup(p => p.ClientVersion).Returns(Season9E2English); var containerForSeason9 = new MainPacketHandlerPlugInContainer(clientVersionProvider.Object, manager); containerForSeason9.Initialize(); var handler = containerForSeason9[HandlerKey]; Assert.That(handler.GetType(), Is.EqualTo(typeof(PacketHandlerSeason6))); }
public void SelectPlugInOfCorrectLanguage() { var manager = new PlugInManager(null, new NullLoggerFactory(), null); manager.RegisterPlugIn <IPacketHandlerPlugIn, PacketHandlerSeason6Chinese>(); manager.RegisterPlugIn <IPacketHandlerPlugIn, PacketHandlerSeason6>(); var clientVersionProvider = new Mock <IClientVersionProvider>(); clientVersionProvider.Setup(p => p.ClientVersion).Returns(Season6E3English); var containerForSeason6 = new MainPacketHandlerPlugInContainer(clientVersionProvider.Object, manager, new NullLoggerFactory()); containerForSeason6.Initialize(); var handler = containerForSeason6[HandlerKey]; Assert.That(handler.GetType(), Is.EqualTo(typeof(PacketHandlerSeason6))); }