示例#1
0
        public string PostMethod()
        {
            string usertoken;

            if (!_request.CustomHeader.TryGetValue("Authorization", out usertoken))
            {
                return("POST ERR - No authorization header");
            }

            usertoken = usertoken.Substring(6, usertoken.Length - 6);
            if (!ClientSingleton.GetInstance.ClientMap.ContainsKey(usertoken))
            {
                return("POST ERR - Not logged in");
            }

            if (_request.RequestedResource.EndsWith("tradings") || _request.RequestedResource.EndsWith("tradings/"))
            {
                if (!_request.CustomHeader.ContainsKey("Content-Type") || _request.CustomHeader["Content-Type"] != "application/json")
                {
                    return("POST ERR - Request not in JSON Format");
                }
                else if (string.IsNullOrWhiteSpace(_trade.Id) || string.IsNullOrWhiteSpace(_trade.CardToTrade) || string.IsNullOrWhiteSpace(_trade.Type) || _trade.MinimumDamage <= 0)
                {
                    return("POST ERR - Invalid Trade");
                }

                return(_tradeController.AddTrade(_trade, usertoken));
            }

            string tradeID =
                _request.RequestedResource.Substring(_request.RequestedResource.LastIndexOf("/") + 1);

            return(_tradeController.TradeCards(tradeID, _request.Content, usertoken));
        }
示例#2
0
        public void TestNotAddingInvalidTrade()
        {
            TradeDTO trade = new TradeDTO("Trade1", "Card1", "spell", 10);

            _tradeService.Setup(s => s.AddTrade(trade, "user-token")).Returns("POST ERR - Trade already exists");

            string result = _tradeController.AddTrade(trade, "user-token");

            Assert.AreEqual("POST ERR - Trade already exists", result);
        }