public CardDetail GetCardDetail(int expectedEmployerId, string token) { var cardToken = JsonConvert.DeserializeObject <CardToken>(JwtService.DecryptPayload(token)); if (cardToken.Expires < DateTime.UtcNow) { LogUtil.Log(string.Format("Expired session token {0}", token), LogLevel.Info); return(new CardDetail() { Expired = true }); } if (!cardToken.EmployerId.Equals(expectedEmployerId)) { LogUtil.Log(string.Format("Expected employer {0} and got employer {1} from token {2}.", expectedEmployerId, cardToken.EmployerId, token), LogLevel.Warn); return(new CardDetail() { Invalid = true }); } LogUtil.Trace(string.Format("Resolved token {0} for employer {1}.", token, cardToken.EmployerId)); return(cardToken.CardDetail); }
public void CanGetCardTokens() { var service = new CardService(); var results = service.GetMemberCardUrls("en", 11, 57020); Assert.IsNotNull(results); Assert.AreNotEqual(0, results.TotalCount); results.Results.ForEach(c => { var cardToken = JsonConvert.DeserializeObject <CardToken>(JwtService.DecryptPayload(c.SecurityToken)); Debug.WriteLine(c.SecurityToken); Assert.IsNotNull(cardToken); Assert.IsNotNull(cardToken.CardDetail); Assert.IsFalse(string.IsNullOrEmpty(cardToken.CardDetail.CardTypeFileName)); Assert.IsTrue(DateTime.UtcNow < cardToken.Expires); Assert.AreNotEqual(0, cardToken.CardDetail.CardTypeId); Assert.AreNotEqual(0, cardToken.CardDetail.CardViewModeId); }); }