public async Task <PaymentProcessEntity> ExecuteAsync(GetByIdQueryRequest request) { _logger.LogInformation($"Executing get process payment with id {request.Id}"); object cached; var inCache = _memoryCache.TryGetFromCache( () => GetCacheKey(request.ToString()), out cached); if (!inCache) { _logger.LogInformation("Payment process not in cache, retrieving from origin"); var origin = await _repository.GetByIdAsync(request.Id); if (origin == null) { return(origin); } CreditCardMask.Mask(ref origin); _memoryCache.WriteInCache( () => GetCacheKey(request.ToString()), origin); return(origin); } else { _logger.LogInformation($"Payment process retrieved from cache"); return((PaymentProcessEntity)cached); } }
public void RandomTests() { Func <string, string> solution = (cc) => { return(cc.Length <= 4 ? cc : new String('#', cc.Length - 4) + cc.Substring(cc.Length - 4)); }; Random rand = new Random(); Func <string> randomToken = () => { return(rand.Next(1000, 9999).ToString()); }; for (int i = 0; i < 100; i++) { string t = randomToken() + randomToken() + randomToken() + randomToken(); t = t.Substring(0, 1 + (rand.Next(1, 15) % t.Length)); Assert.AreEqual(solution(t), CreditCardMask.Maskify(t)); } }
public void MaskifyTests(string input, string output) { Assert.Equal(output, CreditCardMask.Maskify(input)); }
public void CreditCardMask_Maskify_ExampleTests() { Assert.AreEqual(CreditCardMask.Maskify("4556364607935616"), "############5616"); Assert.AreEqual(CreditCardMask.Maskify("1"), "1"); Assert.AreEqual(CreditCardMask.Maskify("11111"), "#1111"); }
public void ExamplesTests() { Assert.AreEqual("############5616", CreditCardMask.Maskify("4556364607935616")); Assert.AreEqual("1", CreditCardMask.Maskify("1")); Assert.AreEqual("#1111", CreditCardMask.Maskify("11111")); }