public void StandUpToSpactateTest() { //Arrange Player player; var room = _user.CreateNewRoom(_level, _config, out player); double buyIn = room.Preferences.BuyInCost; int seatIndex = 0; _user.JoinNextHand(player, seatIndex, buyIn); player.Fold(); StandUpToSpactateRequest request = new StandUpToSpactateRequest() { Player = player.GetHashCode(), UserName = _user.UserName, SecurityKey = _securityKey, }; //Act var act = _ctrl.StandUpToSpactate(request); StandUpToSpactateResult actContent; var hasContent = act.TryGetContentValue(out actContent); //Assert TestContext.WriteLine("error message: '{0}'", (actContent != null && actContent.ErrorMessage != "") ? actContent.ErrorMessage : "null"); Assert.AreEqual(HttpStatusCode.OK, act.StatusCode, "status code"); Assert.IsTrue(hasContent, "has contact"); Assert.AreEqual("", actContent.ErrorMessage, "error message"); Assert.AreEqual(true, actContent.Success, "success"); Assert.AreEqual(buyIn, actContent.RemainingMoney, "remaining money"); Assert.AreEqual(_user.UserBank.Money, actContent.UserBankMoney, "user bank money"); Assert.AreEqual(_user.UserStatistics, actContent.UserStatistics, "user statistics object"); }
public HttpResponseMessage StandUpToSpactate(StandUpToSpactateRequest request) { var result = new StandUpToSpactateResult(); try { result = service.StandUpToSpactate(request); } catch (Exception e) { result.ErrorMessage = e.Message; result.Success = false; return(Request.CreateResponse(HttpStatusCode.InternalServerError, result)); } return(Request.CreateResponse(HttpStatusCode.OK, result)); }
public StandUpToSpactateResult StandUpToSpactate(StandUpToSpactateRequest request) { var result = new StandUpToSpactateResult(); try { var user = _cache.RefreshAndGet( Users, request.UserName, new UserNotFoundException(string.Format("cannot find user name: {0}, please login again.", request.UserName)) ); UserManager.SecurityCheck(request.SecurityKey, user); Player player = null; while (!Players.TryGetValue(request.Player, out player)) { if (_cache.Refresh()) { continue; } throw new PlayerNotFoundException(string.Format("cannot find player id: {0}, please re-enter the room", request.Player)); } result.RemainingMoney = user.StandUpToSpactate(player); result.UserBankMoney = user.UserBank.Money; //TODO - idan - check JSON of user statistics result.UserStatistics = user.UserStatistics; result.Success = true; } catch (PokerException e) { result.Success = false; result.ErrorMessage = e.Message; Logger.Error(e, this); } return(result); }