コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }