public void TestSarchophagusFeature() { // arrange var user = new UserGameKey(-1, 51); var userSession = new UserSession { SessionKey = "unittest", UserId = -1 }; var bet = new SpinBet(user, PlatformType.None) { Lines = 50, LineBet = 1.0m, Multiplier = 1 }; var requestBonusContext = new RequestContext <BonusArgs>("unittest", "Cleopatra", PlatformType.None) { GameSetting = new GameSetting { GameSettingGroupId = 1 }, Query = new QueryCollection { }, }; requestBonusContext.UserSession = userSession; requestBonusContext.UserGameKey = user; var bonusContext = new BonusStateContext(1, new CleopatraBonus { SpinBet = bet }); var state = new SarchophagusState(new PreSpin(1, 0)); //Action var response = state.Handle(requestBonusContext, bonusContext); var result = response.result; var responseXml = xmlhelper.Serialize(result.ToResponseXml(ResponseXmlFormat.None)); var element = XElement.Parse(responseXml, LoadOptions.PreserveWhitespace); // Assert Assert.IsNotNull(element); Assert.AreEqual(result.Win > 0, element.Element("win") != null); Assert.AreEqual(result.Win, decimal.Parse(element.Element("win").Value)); Assert.AreEqual(result.Win > 0, element.Element("data").Element("spin").Element("winposition") != null); Assert.AreEqual("", element.Element("data").Element("spin").Element("winposition").Value); }
public void TestSarchophagusFeature() { // arrange var user = new UserGameKey(-1, 51); var userSession = new UserSession { SessionKey = "unittest", UserId = -1 }; var bet = new SpinBet(user, PlatformType.None) { Lines = 50, LineBet = 1.0m, Multiplier = 1 }; var requestBonusContext = new RequestContext <BonusArgs>("unittest", "Cleopatra", PlatformType.None) { GameSetting = new GameSetting { GameSettingGroupId = 1 }, Query = new QueryCollection { }, }; requestBonusContext.UserSession = userSession; requestBonusContext.UserGameKey = user; var bonusContext = new BonusStateContext(1, new CleopatraBonus { SpinBet = bet }); var state = new SarchophagusState(new PreSpin(1, 0)); //Action var reponse = state.Handle(requestBonusContext, bonusContext); // Assert Assert.IsTrue(reponse.nextState is FreeSpinState); Assert.AreEqual(reponse.result.Win >= 50 * 2, true); }