public void EngineShouldWriteXmlOfRevealBonusResultXml(int gameId, int level) { var module = GetModule(gameId); var spinResult = GenerateWithBonusSpinResult(level); var revealItems = RevealBonusEngine.CreateRevealItems(module.Configuration.BonusConfig.Reveal.ItemWeights); var revealBonus = RevealBonusEngine.CreateRevealBonus(spinResult); var revealItem = RandomNumberEngine.Next(Reveal.RandomWeightMinRange, Reveal.RandomWeightMaxRange); revealBonus.UpdateBonus(revealItems, revealItem); var revealBonusResult = RevealBonusEngine.CreateRevealBonusResult(revealBonus); var xElement = revealBonusResult.ToXElement(); Assert.DoesNotThrow(() => { var responseXml = new RevealBonusXml(); using (var xmlReader = xElement.CreateReader()) { responseXml.ReadXml(xmlReader); } using (var memStream = new MemoryStream()) using (var xmlWriter = XmlWriter.Create(memStream, new XmlWriterSettings() { ConformanceLevel = ConformanceLevel.Auto })) { xmlWriter.WriteStartElement("bonus"); responseXml.WriteXml(xmlWriter); } }); }
public void EngineShouldCopyBonusValuesFromResultToXml(int gameId, int level) { var module = GetModule(gameId); var spinResult = GenerateWithBonusSpinResult(level); var revealItems = RevealBonusEngine.CreateRevealItems(module.Configuration.BonusConfig.Reveal.ItemWeights); var revealBonus = RevealBonusEngine.CreateRevealBonus(spinResult); var revealItem = RandomNumberEngine.Next(Reveal.RandomWeightMinRange, Reveal.RandomWeightMaxRange); revealBonus.UpdateBonus(revealItems, revealItem); var revealBonusResult = RevealBonusEngine.CreateRevealBonusResult(revealBonus); var xElement = revealBonusResult.ToXElement(); var responseXml = new RevealBonusXml(); using (var xmlReader = xElement.CreateReader()) { responseXml.ReadXml(xmlReader); } Assert.IsNull(responseXml.GetSchema()); Assert.AreEqual(revealBonusResult.Win, responseXml.Win); Assert.AreEqual(revealBonusResult.Multiplier, responseXml.Multiplier); Assert.AreEqual(revealBonusResult.RevealItem, responseXml.RevealItem); Assert.AreEqual(string.Join(',', revealBonusResult.RevealItems), string.Join(',', responseXml.RevealItems)); }
public void EngineShouldReadResponseXmlOfRevealBonusResult(int gameId, int level) { var module = GetModule(gameId); var spinResult = GenerateWithBonusSpinResult(level); var revealItems = RevealBonusEngine.CreateRevealItems(module.Configuration.BonusConfig.Reveal.ItemWeights); var revealBonus = RevealBonusEngine.CreateRevealBonus(spinResult); var revealItem = RandomNumberEngine.Next(Reveal.RandomWeightMinRange, Reveal.RandomWeightMaxRange); revealBonus.UpdateBonus(revealItems, revealItem); var revealBonusResult = RevealBonusEngine.CreateRevealBonusResult(revealBonus); var xElement = revealBonusResult.ToXElement(); Assert.DoesNotThrow(() => { using (var xmlReader = xElement.CreateReader()) { var responseXml = new RevealBonusXml(); responseXml.ReadXml(xmlReader); } }); }